BUAA2020 soft-tasking (five) - Software Case Study

project content
This work belongs courses Spring 2020 Computer Software Engineering Institute (Roger Ren Jian)
Where this requirement in the job Software Case Study jobs
My aim in this course is Further improve their coding ability, the ability to project
The job which specific aspects help me achieve goals Learning the strengths and weaknesses of other software, and lessons
Other references "Building of the law - modern software engineering" second edition

I, EDITORIAL

The job I chose two Microsoft code editor: Visual Studio, VS Code to do the evaluation. Why did you choose these two software? Because these two software is very popular one is the most powerful Windows compiler, it is a convenient and easy to use a cross-platform editor.

Visual Studio (abbreviated VS) is Microsoft's US development kit series, is a basic complete set of development tools, which includes most of the entire software life cycle tools needed, such as UML tools, code control tool that integrates development environment (IDE) and so on. Popular speaking, is a compiler.

VS Code, the surface is later added a VS Code, but the nature of it and VS very different. VS Code is a project of Microsoft Corporation, USA: Running on Mac OS X, Windows and on Linux, to write for cross-platform source code editor modern Web and cloud applications. More simply, VS Code is an editor, which means that it is essentially used to write the code, instead of doing debugging and development.

However, and other text editors (Atom, Sublime Text, etc.) Similarly, VS Code also has a wealth of plug-in library. By configuring these plug-ins, we can achieve compile and run the code in debug features in VS Code.

Second, research, evaluation

1. Visual Studio

Visual Studio (abbreviated VS) is Microsoft's US development kit series, is a basic complete set of development tools, which includes most of the entire software life cycle tools needed, such as UML tools, code control tool that integrates development environment (IDE) and so on. Popular speaking, is a compiler.

Use VS running a demo screenshot:

And related integrated development environment (CodeBlocks, Clion) is similar to a key can be run directly after a good code editor. Figure we can see VS is run by a single console.

The amount of data

VS software is great, probably you need to use the basic functions of a few G of space, because it integrates many features, has a very complete debug and test systems.

interface

VS default interface looks a mess, especially when debugging, probably because the function are many. But I think both multi-functional and attractive interface do not conflict. This aspect can be compared JB's Clion. I use daily in most of the time Clion, not only beautiful interface, and personally feel debugging feature does not lose VS.

As shown, VS debugger interface:

As shown, Clion debugging interface:

Clion information will be seen playing in the response of each variable position variable that appears when debugging, it seems more clear. And Clion has built-in console, when running the program will not pop up a console, but also improve the user experience. That's the reason why I have been using Clion like.

Functionality and accuracy

Function, the title of the most powerful real VS compiler to its name, feature-rich area is the extent of any other IDE can not compare.

About VS few bug:

  1. VS static code inspection delay is very high, and sometimes it will prompt us missing a header file, we need to be added manually, but when added to the VS over a long time will cancel this prompt. In our twinning job, I felt the high latency of inconvenience, as shown:

After I added this UILine header, the vector inside UILine still will complain, only to switch it will become a normal file format. This is not my computer more cards, my mac have 16G memory, is the kind of high performance. So VS yet to be optimized in terms of efficiency of static checking the code.

  1. The VS Live Share plug-in can be very difficult to use, and has the following characteristics: First, the delay is very high, probably link up 2-3 minutes, and may even go up can not see each other's files, but sometimes Read, read code is suddenly disconnected, so before you write things were in vain, do not know the reasons for the proxy server is not required, but very inconvenient to use it is. And there is such a magical phenomenon: when he first entered the shared window, the perspective of the participants will share those with the rolling and rolling, which means your mouse wheel is of no use, scrolling perspective sharers will also affect you . This phenomenon can only be manually switched to another file and then switch back to resolve.

2. Visual Studio Code

VS Code, the surface is later added a VS Code, but the nature of it and VS very different. VS Code is a project of Microsoft Corporation, USA: Running on Mac OS X, Windows and on Linux, to write for cross-platform source code editor modern Web and cloud applications. More simply, VS Code is an editor, which means that it is essentially used to write the code, instead of doing debugging and development.

However, and other text editors (Atom, Sumlime Text, etc.) Similarly, VS Code also has a wealth of plug-in library. By configuring these plug-ins, we can achieve compile and run the code in debug features in VS Code. Here is what I run a C program demo pictures with VS Code of C / C ++ compiler plugin:

The amount of data

And compared to VS, VS Code even light flyweight of the entire software only a few hundred MB, plug-in is very small, and support for all systems (VS can only be used on Windows).

interface

From the above picture you can see the VS UI is very clean, easy to use, no VS of bells and whistles, I prefer the type of editor.

Functionality and accuracy

VS Code Editor just a, so the function is not particularly rich in this regard is over, but the VS. As usual I use is not particularly large, so what bug or use the convenient place have not been found.

Third, analysis

The following questions and just talk for bug VS found therein.

1. Use all the features of this service, it is estimated that the software / website / service to achieve the degree of how much time this takes about (team size 6 or so, computer graduates, and professional support UI).

Since there are professional UI support, we consider only the back-end development issues. First VS function is very powerful, I currently use for about two months, an estimated personal use only where less than a third of functions, including coding, debugging and unit testing. Since before written grammar class C compiler, in my experience, for a language, write a built-compilation tools probably need more than a month, I can not say how well written. Coupled with debugging tools, test frameworks, and relevant learning new knowledge for computer graduates, I feel you have to achieve the most basic functions of a year's time. Other features such as code analysis, static checking, also need a long time to develop it, for a language, at least in more than three years of development time, not to mention VS also integrates several languages. So the strongest IDE on Windows VS deserved the title, many experienced developers need to take a team of experts to develop, want a six-person team developed university graduates is almost impossible.

2. Analysis of the merits of this software is currently (and compared to similar software), the quality of this product is estimated ranked the first of several similar products in?

Pros: VS advantage is very comprehensive, can be used for almost all of the development, where we Jetbrains company's software and compare, JB company for each language have designed a corresponding IDE, so that is not a comprehensive well, VS software contains all the features, we just need to have selectively installed.

Disadvantages: The disadvantage of VS also functions too full, for most users, some of the features is almost invisible, but it can also be installed inside at the time of installation, which seemed VS software is very large, so for large some users will turn to VS Code or Clion (I Clion players). This has resulted in the popularity of the software is not particularly good.

If I were to rank the words, Clion> VS Code> VS.

3. all aspects of the problem, reasoning that an important aspect of the software team in software engineering can improve the (specific recommendations).

Develop a VS Lite version, so for each language in a targeted manner to achieve a software company like JetBrains, in addition, UI can also Jane is Jane, this software can greatly reduce the volume and increase the number of users.

Fourth, advice and planning

1. The software market, how much? How many potential users?

VS is the world's most famous IDE, so the size of the market is worldwide, including potential users of medium and small software development engineers. But students should not have much use, because it is too professional, in my understanding of the range, most of the students prefer VS Code.

2. What kind of products currently on the market, where their strengths and weaknesses in? And where it is directly competing products?

  • Eclipse: free open-source Java editor and IDE, have a good plug-in mechanism that supports a wide variety of extensions and plug-ins. Originally a Java IDE. Now extended to support C / C ++, Java, Peri, PHP, Python, Ruby and more languages.
  • Code :: Blocks: free open-source free software, support is a highly customizable cross-platform IDE, and stick to consistent results across all platforms. For developers often different platforms to switch, very convenient. It supports three languages ​​C, C ++ and Fortran languages. The advantage is small size, small development and learning sufficient. The disadvantage is not fully functional, and the UI interface is ugly.
  • Xcode: Xcode is an integrated development environment produced under Apple Mac OS X. Built as a series of set of tools for iPad, iPhone and Mac application development. Xcode is a single-form interface, control can be easily connected to the code that implements this interface. Support for AppleScript, C / C ++, Java, Swift and Objective-C. The advantage is no competition, development and mac os ios application necessary, easy to market. The disadvantage is that language and windows application development support less.
  • JetBrains: JB which owns Clion, Pycharm, Idea and other variety of applications, each supported language. The advantage is a language for developers who do not need to install a lot of things, small size, beautiful interface and UI, more loved by young developers. The disadvantage is that integration is not good enough, not a software languages.

3. As a new project manager, the product's core user base is what kind of person, a typical user look like? Education, age, profession, hobbies, whatever the income, the surface of demand, potential demand is?

VS core of the current user is a senior software development engineer, over 30 years of age, more than undergraduate education, professional software development, income more than 200,000 annual salary.

As project manager, I will develop a Lite installation mode, not omitting most of the commonly used functions for installation, ensure the normal use. At the same time I will be optimized UI interface, the VS even younger. In this case the party as well as students of UI aesthetics require a relatively high degree of VS young users will choose to use. This will expand the user base, the VS have better prospects in the market.

Guess you like

Origin www.cnblogs.com/shanyanbo/p/12574410.html