No matter what programming language or technical framework to learn, in order to avoid "lost", less detours, there should be a systematic, comprehensive learning route, the author believes that the general function of the software as the main line, from simple into the complex, one by one practice each function.
I have taught myself C, VFP, ASP, vb.net, PHP, JAVA, JSF, C#.net, WinForm, ASP. NET and Web development and other programming languages or technologies, participate in the development of more than 10 projects, the author believes that learning software development, the most difficult to get started, the entry is not simple on the computer screen output "Hello world! , but should be to understand the programming language of the development environment and tools, learning and mastering basic controls, multi-application practice. The introductory phase of computer programming theory can be put aside, first learn how to use programming tools to develop small programs, and then explore how to develop more complex programs, and finally the systematic completion of the basic theory of knowledge. The author advocates "Plug and play" self-study method, first see the effect, and then go back to explore why do so. If a beginner learns the sweetness, he will become more and more interested in software programming, thus entering a virtuous cycle of learning. If you learn C for a few weeks, you can only print some characters on your computer screen, write a loop, and do a math operation, then this beginner is likely to lose interest in software programming due to frustrated sense of accomplishment.
I studied C language during college, although the test results are good, but the C language theory is confused, full of doubts, learn C language specific can do what is not clear. Because of the C language Classics and legends and like it, but repeatedly because did not feel the C writing program's sense of accomplishment and give up. Later, the author study web development, ASP, self-study for half a year, although can write some dynamic Web pages, but independent to do a company website is still difficult. At that time, the company's website market price in the million-dollar era, and now hundreds of yuan a website compared to the technology progress, the times changed. I think I never started before I learned vb.net. A visit to a bookstore, accidentally turned to a vb.net development combat, reading vb.net code as easy as reading text, according to books provided by the WinForm case, just two months of time will be the company file System (ASP version) using win form re-development. Later learning ASP, PHP, Java and other programming language is also very smooth. At this point, fang Sense suddenly, learn programming so many years, has been mengmengdongdong, in the final analysis is not found entry points.
Regardless of C #, Java, PHP, each programming language, syntax is very similar, the function is similar, then it should be difficult to learn Java and C #, but most programmers think that learning Java is harder than C #, and learning costs are high. I think the main reason is that Java development environment and resource acquisition is more difficult than c#,c# in the integrated development tools Visual Studio through the wizard minutes to see C # written programs, Visual Studio is provided by Microsoft, which is much more complete than the Java development environment. An interesting phenomenon is that Java programmers often look for the right version of the jar package, which is a key factor in the many, many resources of Java open source projects. C # Programmers have a lot less experience, because Microsoft offers it all.
Some programmers think that Microsoft's stuff is too easy to get started, so learn. NET is not tall enough to prove that he is smarter than others, and prefers to use a command-line tool. I think that learning computer programming, you can first find a "soft persimmon", and then Gnaw "nut", so recommend beginners from C # and win form start.
The following is the author of the learning route, the function of the arrangement does not have an absolute order, just a reference direction, Welcome to criticize, welcome to add!
C # Learning Route
Install and familiarize yourself with the development tools or development environment
Create a project, output Hello World, and run the compiled demo program on another computer
Familiarity with WinForm basic controls
Data type
Class and attribute definitions
Variable
Assign value
Operator
string concatenation
String formatting
Date Time formatting
Numeric formatting
Keep decimals
Conditions
Cycle
Generate random numbers
Array
List
Queue
Reference namespaces
In the console output
Font style
Shortcut keys
dialog box
File and folder operations
Text file read, modify, delete and other operations
Character
XML file Operations
Verification Code
Thumbnail images
Manipulating Excel
Operation WPS
Error handling
Error log
Binary stream
Character encoding
Add decryption
Timer
Multi-process
Send e-mail
Call cmd command prompt
Connecting to a database
Database additions and deletions change operation
Data set DataTable
Dictionary
Familiarity with WinForm controls
Text Label label
Button
text box
drop-down box
Date Time selection box
Radio Box
check box
list box
Options tab
Split bar
Tree
Data Table Datatablegridview/datagrid
Controls and events (stand-alone, double-click, get focus, lose focus, select)
Form validation
Regular expressions
message dialog box
Confirmation box
Input box
Calling the Web Service
Using proxies
manipulating COM ports
Print
Report
Socket communication
Small tray icon
Open a URL
Open a URL and read the page content
File upload Download
Generate barcodes
Generate two-dimensional code
Install package
Get IP Address
Referencing third-party DLLs
Document management System
......
C # Software Development Learning Route