几年来,我一直在Mac上愉快地开发应用程序(尤其是Django)。作为此过程的一部分,我一直希望提高工作流程的效率,并喜欢阅读有关其他开发经验的文章。现在轮到我回馈了。这是对my previous post的修订,包含了我的时间和经验。

贸易工具


装有XCode的Mac
一套不错的GNU工具(coreutilsfindutilsdiffutils ...)
SCM的一组可靠的gitmercurialperforce,svn(如果需要)。
iTerm2-这真是太棒了。
ActivePython-免费版本→所有人都可以使用easy_install,pip,distribute,ipython,pylint。
Komodo-(是的,我为此付了钱)尝试过textmate,eclipse,pycharm,Komodo几乎拥有我需要的所有东西。
Dropbox(共享)/ Omnigraffle(模型)/ Omnifocus(计划)




结构

~/Users/<username>
    /Dropbox/Projects/<project_name>
        /Documents (Personal Documents relating to the project)
        /Public    (Public Documents shared with customer)
    /Projects/<project_name>
        /Documents ../Dropbox/Projects/<project_name>/Documents
        /Public    ../Dropbox/Projects/<project_name>/Public
        /Development
            <virtual_env>


起步

创建一个虚拟环境并激活它。

$ cd ~/Users/<username>/Projects/<project_name>/Development
$ virtualenv --no-site-packages --distribute <project>_django
$ cd <project>_django; . ./bin/activate
$ echo "alias <project>d="cd ~/Projects/<project_name>/Development/<project_django/www/; . ../bin/activate" > ~/.bash_profile


安装核心模块并启动django项目。

$ pip install django django-debug-toolbar dbgp
$ django-admin.py startproject www
$ pip freeze > www/requirements.txt


继续发展。

$ cd www
$ django-admin.py startapp core


评论


www下的所有内容(忽略.pyc)都存储在SCM中。
在www树中创建您的Komodo项目,并确保将../lib/python2.7/site-packages/树添加到项目中。
在Komodo中,我创建了几个宏,这些宏对我有很大帮助


调试会话在pydb下运行./manage.py runserver,从而可以从Komodo内部进行良好的自省和强大的调试功能(如上所示)。在PyDev中也可以使用。如果有兴趣,我可以分享。它要求#2的可伸缩性。
Pylint-在您的代码上运行pylint,并确保得分至少为8.75。
选项卡标题-从here无耻地滑动和调整

我将iTerm用于./manage.py shell_plus-这比内置于Komodo解释器的方式优越。


想法?

请分享您的观点并指出需要改进的地方。我一直在寻找更好的做事方式...

最佳答案

正如丹尼尔指出的那样,这本身不是问题。所以没有答案-除了确定。

10-02 07:55