40

基于工程实践选题的对同类软件产品的调研分析

 4 years ago
source link: https://www.tuicool.com/articles/2QVbi2V
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

本人的工程实践选题为《基于大数据问答训练的中文自然语言理解系统设计》,下面我选取了工程实践可能会用到的三款软件:PyCharm、Visual Studio、Jupyter Notebook从以下几个方面进行了调研和分析。

一、这些软件的开发者是怎么说服陌生人成为他们的用户的,他们的目标都是盈利吗,都是赚取用户的现金么,还是别的?

PyCharm、Visual Studio、Jupyter Notebook这三款软件都是公认的非常好用的软件,前两款是集成IDE开发工具,都有一般IDE具备的功能,比如, 调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制等等。后一款配合Anaconda使用,可以逐单元调试运行,非常便捷。再通过老师们的推荐以及课程的需要,我成为了它们的用户。

PyCharm、Visual Studio毫无疑问是以盈利为目标的,虽然我们日常学习可以使用它们的免费版本,但是在工作中还是要购买功能更强大的版本。Jupyter Notebook可以免费使用。但是在当前的互联网环境下,用户量可能是一个很重要的资源,只要能够吸引并且保持足够多的用户,盈利便会顺理成章。

二、这些软件都是如何到你手里的?

我都是通过在对应软件的官方网站下载并安装使用。其中Jupyter Notebook是通过Anaconda安装使用的。

三、这些软件有Bug吗,又是如何更新新版本的?

如今软件的体量都比较大,不可能做到尽善尽美,所有这些软件肯定有Bug存在。我来举例两个不完美的地方:

BFRVfyE.jpg!web

如上图所示,在PyCharm中,如果之前调试了test.py文件,当我们关掉test.py文件打开test_1.py文件时,然后用快捷方式(shift+F10)开始调试时,还是之前test.py运行的结果,我觉得要是能自动改为当前正在编辑的文件会更方便。

在Jupyter Notebook中,当我们运行某个单元后,将该单元内容删掉重新编辑再运行,之前的内容虽然不在单元中,但是运行的结果还在,如下图2,仍然可以打印出a的值。但是当我们重启Jupyter Notebook后,却无法打印出a的值,如下图3。当我们运行多次修改多次后,可能会忘记我们之前修改的内容,有可能带来错误。

iyiimy7.jpg!webiMRbyib.jpg!web

2AJfmer.jpg!web

当PyCharm、Visual Studio有更新时,客户端后收到推送,也可以自己检查更新。Jupyter Notebook可以通过Anaconda更新新版本。

四、此类软件是什么时候开始出现的,同⼀类型的软件之间是如何竞争的? 发展趋势如何?

Visual Studio在1997年由微软发布,PyCharm出现于2011年,其实每一款软件都有自己优势的地方,例如Visual Studio在windows桌面应用开发上更占优势,当我们使用Python语言时,更多的选择PyCharm。而Jupyter Notebook胜在轻便。这些软件都发展的很好,因为它们在各自的领域都表现的很出色,深受广大开发者的喜爱。

五、列举你在使用上述软件时观察到的“特殊”现象,它们和硬件有什么不同?这些能说明软件的某些本质特性么?

上述软件有一个共同特点就是越来越人性化,而且交互界面也很好看。对于硬件应该更加侧重性能和功耗。这说明软件是人使用硬件的一个接口,人与软件的交互显得非常重要,一个软件性能再好,要是交互体验很差,也很有可能会被用户抛弃。

六、你个人第一次使用此类软件是在什么时候,你当时几年级,班主任叫什么,在哪里,什么状态。当时的软件是如何得到的。

由于我是跨专业考研的学生,我第一次使用Visual Studio是一年多以前在家复习考研的时候,第一次使用PyCharm和Jupyter Notebook是在研一开学的时候。都是从官网下载安装的。

七、你是如何精通这些软件的,它给你什么好处、坏处?

我作为一个初学者,离精通这些软件还有很长的路要走,但是我也明白想要精通这些软件,就要多使用它,而且遇到不懂得地方要多查阅资料,多请教别人。这些软件给我带来的不仅仅是编程技术的提高,更是让我更加渴望学习。但是现在集成度很高的软件虽然带来了使用上的方便,但是作为一个软件工程专业的学生,更需要从更深刻的层次理解这些软件的工作机制,方便不一定仅仅对我们是好处。

八、你现在还在用它么,为何?

我现在还在使用这些软件,因为作为软件工程专业的学生,编程就是我们的生命。

九、这种软件再过十年、二十年还会存在吗,为什么?

一定会存在,也许某些产品会被淘汰,但是一定会有新的软件替代它,在未来的二十年内,程序员依然要使用编程软件去工作。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK