擅长:python、mysql、java
<p>公平地说,MVC并不局限于web应用程序。我认为,由于过去几年网络意识的发展趋势,MVC和web应用程序之间的关系本可以得到发展。换言之,web应用可以使用MVC,但使用MVC并不一定意味着你拥有web应用。</p>
<p>如果你想使用一个框架,你可以尝试使用一个最接近你想要的控制器。我不知道有哪种MVC框架使用命令行作为接口,但是一些使用命令行的独立于平台的GUI框架,例如<a href="http://www.gtk.org/" rel="nofollow">GTK+</a>或<a href="http://www.google.nl/url?sa=t&source=web&cd=1&ved=0CC0QFjAA&url=http://qt.nokia.com/products/&ei=2KGWTsqPE5DrOdvv7YkC&usg=AFQjCNHeopgWAIPHcaixe_HfP7Lg0q-gTQ" rel="nofollow">QT</a>:它们都有python绑定。</p>
<p>从个人角度来看,我以前使用过<a href="http://www.google.nl/url?sa=t&source=web&cd=1&ved=0CDkQFjAA&url=https://www.djangoproject.com/&ei=P6KWTtvSE4PqObzFgI8C&usg=AFQjCNGAkwU79_tDTUz9QJ2qNnMTWbsaXw" rel="nofollow">Django</a>来实现这个目的。尽管技术纯度可以作为讨论的一个要点,但是在选择框架时,没有人强迫您使用框架的所有组件。Django有一个很好的ORM,我非常喜欢它,所以我把它作为SSH操作接口的后端。这可能有点过头了,但对我来说,我的优势是可以重用我对系统的知识,而不是学习一个新的、一次性使用的框架。</p>
<p>总之,这一切归结为纪律。即使是最好的框架也不能阻止你违反编码标准和偷工减料。。。</p>
<p>PS如果您在Linux上,您可以考虑在命令行前端使用python的<a href="http://docs.python.org/library/curses.html" rel="nofollow">curses</a>模块。</p>