"Building of the law" - that is a job for the first time blog first blog

This work belongs courses Links courses
Where the job requires Link job requirements
My aim in this course is Learning and long-term adherence to write a blog, mode of teaching experience learning by doing, learning experience for management and collective development project code and learn to project systems analysis and design process
Personal blog Home https://www.cnblogs.com/westweishao/

 

 

 

 

 

 

First, establish a blog and introduce yourself

Introduce myself : I am a software engineering student at the regular undergraduate student, currently a junior reading, my personal hobby very much, mainly likes to sing (although singing is very general), dance (along with the students learned 10 days of HipHop), rap (mainly imitate rap, and the occasional freestyle), of course, one of my favorite basketball is a sport, of course, now these hobbies can only be called a hobby, also whim learn the guitar for a while (two consecutive days, playing to the fingers broken skin, then give up, hey hey hey). Overall I was like a relatively shallow understanding of the various interesting things fat, you're not wrong, after all I still love to eat, I was a typical food goods, in order to exercise my understanding of the taste of food I deliberately began to practice memory for each flavor of vegetables, and therefore I fell in love to cook, I like to watch some cooking video, or when I go to some restaurant for dinner, I will deliberately Note how he's going to cook, so now whenever I smell a smell, I sure can determine what 90 percent of that dish, this is all thanks to the part-time experience in the hotel once. So yeah, I sum up a long time to practice nearly a month's Java trainee, I like to sing, dance, rap, basketball.

Second, reading and thinking

(1) Recall Imagine software engineering professional when you are entering the university

a. How did you make the decision to choose a professional software engineering?

Due to eye problems had not studied medicine, so choose software engineering, start hearing the term when he feels very big, I checked online, there are thousands of what a monthly salary game programmer or something I was right, you feel particularly powerful, but also feel able to make money, then hold the dream of becoming a millionaire, I chose the software engineering profession, the profession now this school is my first volunteer.

b. Do you think the past two years exposed to the course meet your expectations for software engineering, and why?

Over the past two years, the curriculum is simple to understand a bit, c language, c # language, Javaweb, HTML, PHP, Java. Of course this process, I think it is a little disappointed, because I believe that software engineering is engaged in software, but virtually no past two years to actually write what software is up to a million years did people use the library management system, but it also written during some simple things as software enhance interest, such as some World war II aircraft, bomber, playing cards, Dance Dance Revolution and other fun little game now, but they can not be used to make money reaches the point.

c. What do you think are your favorite software engineering field it, it is an area you're good at it?

Reason, software engineering is not my favorite field, I learned two years, felt less and less time writing code, and students (especially in a team of students) a growing gap between the . It is also because there is no real knock on how the code, so it this is not my area of ​​expertise.

d. You can choose to engage in the future of software development-related work? If you want to go is a given city, company and job, if given no reason

I would choose the relevant work in software development, though I'm so food, but to see the face of money, I intend to start a serious knock code, especially large companies (BAT) wages are high. The future of it, I want to go to some of the wide north-tier cities like, I hope I can go to big companies like Baidu, Ali, Tencent, Netease same. Can become the senior management, I also more willing, of course, if my ability to achieve a strong point, then I am willing to try entrepreneurship, because who unlike when the big boss does, senior management, then logically speaking, overtime will be relatively small, the actual development time will be relatively short (hair will not become less). Mainly the higher the position, the higher the wages ah.

(2) the control of people walked the streets before and described the future, now you

a. feel you already have professional knowledge, skills, abilities, what? The amount of code has been written is how much? Describe the most complex projects you do / work.

I think they already have the ability to develop some simple applets, and write some simple topic. Professional knowledge, then feel shaky grasp, all in a short time to master some knowledge, after a period of time in this part of the knowledge that only a particularly simple memory skills, then can spend some UML diagrams, flowcharts, and can simply analyze software needs, but in fact the ability to write code for the weak, only on paper for specific coding, it simply does not work, I have written the code may have nearly the amount of more than 4,000 lines (or really small poor ah) of the bar. Done complex projects are many, but in fact specifically written, it should have only one library management system now, there are some simple regular deletion check function, but did not even connect to the database, it is simply in a document writes some data. Throughout the program, is to write several functions, and there is nothing special more experience in object-oriented programming after, because there are programming manuals, code is almost always shining knock Therefore, the actual writing of it, complexity of the code far less library management system

b. from becoming a qualified graduates in the professional knowledge, skills, abilities but also the gap between what

From a qualified graduates in the professional knowledge of some of the framework, what computer networks, operating systems, and so has not yet begun to learn software engineering for the detailed steps what software needs, what what agile principles are not completing , so the gap is still big, the most important should the number of actual programming capabilities, this is too much for the poor from the entry, and this software is the ability to engage in the most basic, you want to be on top management, only some knowledge management is not enough, still have the need to convince the public, so the technical strength or the last word. He said actual point is that the Java, JDBC think ah, reflection, MVC, springboot, springcloud, distributed development, Java concurrency, etc., these are I have not learned.

3) currently is a crossroads of life choices, PubMed, work, public test, go abroad, there are different options at different junior endeavors. And each path whether or postgraduate work, there are many different branches.

a. control than before you read people's experience, what is your choice?

Because our homes so Dean teacher recommendations PubMed, and it is now out of the seniors, many seniors have chosen to start something was because with this continuing education, only to high-level go higher, in order to have a good employment opportunity, I choose prepare for graduate school, because as far as I present this technical ability, I guess where to a company, the company will not hire me, it can only be that something like this can continue learning technology to the company's ability to entry.

b. Under this option, you think What are the advantages, what are your weaknesses compared to other classmates?

On current trends, the study section would be more late into the community, but also to learn two years, will be more employment opportunities, knowledge and learning will be more professional, be more precise on the knowledge, skills and employment opportunities so also will become greater, for the same salary that goes with it, but will lose the same project several years of practical experience, it is possible the same session, the students have accumulated a lot of specific knowledge development, graduate study in school, The actual development work for a lot less than they are.

c. for your choice, planning to arrange your own junior set what is?

Junior, then I was ready every time out every day to learn advanced mathematics, English PubMed to test these subjects, but words are going to knock a bit of code every day, whether it is a small project or a simple question to be hands-on program, mainly this ability to strengthen. This technology will be at the same time and · PubMed, of course, still have to PubMed a little biased, it is hoped that this term may then be able to mention the grade point 3 above, before the really low.

d. For you to achieve your dreams have done or plan to do what kind of preparation?

For the realization of my dream, you are actively learning a foreign language hoping to work abroad, but also to see some small projects accumulated experience in programming, there is to see more foreign advanced some programming projects for foreign IT industry always pay attention to, Watch the moment a number of programming languages ​​and programming direction hottest, some of these plans ready to join the ranks of foreign students, to understand their programming, to prepare for later employment abroad can rely on their programming skills.

III. Ask a question

Question 1

In the second chapter refers to a unit test, mentioned in the text of a write unit tests using VSTS, the actual operation of the unit test is not very will, about the principle of knowledge is to understand, but the specific parameters of the test for each unit class it is also possible to have a dependent unit test how should be. Unit Tests also relates to a test program for efficiency, so the software how to write and test code is compiled at several levels stage are to be considered. That is to dismantle those specific unit and how to test or problematic. If there will be an upgrade in the process of long-term maintenance of code, this time there will be a new unit test, but if you go every rewrite, so the maintenance cost becomes large and workload becomes much, in the end how to solve this problem?

Question 2

Article mentioned in section 4.5 settle for programming, it produces There are many benefits to programming the book point of view, but if two very strong people began to pair programming so it will not get better, when two people there are differences of opinion, the things will become very difficult to solve, because the two people on a particular issue to consider is not the same, and both are very strong person, so there may be different views on a specific issue for, and certainly each of which has their consideration, then when there is such a problem that pair programming model, how should survive; another case a strong and weak, so it would be the one to draw water, that would place undue reliance on the weak strong, the situation in the school team, very common, as in this case how to solve it, the benefits of the program will bear is not exist, then what good way to solve it

Question 3

I read this passage (Agile is an intellectual movement, or a kind of values, which covers several software development methodology), have this problem (agile development principles, can be used to the extreme right, in the extreme on the basis of how best to measure each factor of it). I checked the information, there are these claims (

The first one features: need to embrace change, because in the early days, a lot of entrepreneurial team simply want to know, or do not want to think of the business model is very clear, a lot of entrepreneurial team want to quickly verify by means of a trial and error method of starting as soon as possible and then constantly adjust from either direction to find the right business model, so this model also requires software development model can respond quickly to change.

The first two features: faster, because in the same direction may be more than a business team is doing, combined with the limited funds to start a business, it requires software development process must be fast, efficiency must be high.

The first three features: To support small team operations, the early start because resources are limited, so the software development process must be robust enough to support a small team, and each team member can play multiple roles.

The first four characteristics: easy to manage, as compared to management and entrepreneurial team pay more attention to work quickly see the results, you need to practice complex management methods and additional management staff is unwelcome, and not only unpopular, the best is to let employees self-management, so as to maximize reduce costs.

), According to my practice, but I still do not understand, my confusion is (Is there an express provision to fix or how to achieve a measure of dynamic equilibrium of the best).

Question 4

 Mentioned product manager (182) in the ninth chapter of this book "Building of the law" in the Product manager, summer vacation time according to the actual situation in society, product manager for direct access to the underlying user few opportunities through the sales staff to collect feedback, it will only exist many prejudices, they can not understand the actual demand and sales in the process to sell the product, only to say good customers, but also because the same client software sold only to boast of, and make recommendations the feedback so few product manager for this position in the end to do what work, marketing blindly to sell products to customers that only good, but also because our customers advantages over, feedback suggestions to get, then I, as how should a product manager received feedback practical in order to achieve continuous product optimization it?

Question 5

"Building of the law" mentioned in a book called the idea of ​​learning by doing, in the summer when we took 15 days to try this method to write javaweb, write a site can be used, with the springmvc, whole process basically said it was doing, but I think this method is not very desirable, because not every step, every place needs to find information, it is better to start from scratch to learn, so the efficiency of the final will be a little better, Zou teacher so I think this approach is contradictory, will not face large base themselves in practice, this practice is very time-consuming, I think this method is suitable for a certain basis and then used in the development of software when this does not apply to our zero-based student, this time I have a little book on this idea Fan wave point of view, the internship to the final point of view based on summer vacation.

IV. Understand and investigate source code version management tools

git

git advantages and disadvantages:
advantage:
1. suitable for distributed development , emphasis on the individual.
2. Public pressure and the amount of data the server will not be too large.
3. fast and flexible. You can easily resolve any conflict between two developers.
4. Work offline.
Disadvantages:
1. The less information (at least Chinese little information).
2. The learning period is relatively long. Unconventional thinking.
3. Code poor security, the entire library clones Once the developer down on full disclosure of all the code and version information.

github

Advantage:

1. Complete Markdown language support, and support for Emoji expression

2. supports direct copy images to a page, it will automatically upload pictures (very good features, but also know almost Support)

3. better support Mobile. Although there is no github mobile client, but usually developers, written blog will be shared through Weibo, so come after clicking, you can access your phone's browser inside.

4. Use github native functions can be carried out similar functions comment

5. Support @ user functions

 6. Support tab, of course, you repository inside

 7. Stresses the individual, in line with hacker pay more attention to reputation / accomplishment of nature

 8. simple and practical design features to get started quickly, good availability, there are a lot of very good quality of various projects and developers on it. 

 Disadvantages:

1.GitHub use git distributed version control system, and git Linus Torvalds originally to help Linux developers and created it for the Linux platform, git, and Windows has never been the best of friends, because it was nothing like Windows. GitHub released GitHub for Windows, Git provides an easy to use graphical client for the Windows platform developers.

2. domestic access speed is too slow, often connect time-out

3. can not solve GB2312 / GBK, not friendly to Chinese

4.wiki too weak, a direct result of the document (important for open source projects) are often separated into a separate site

5. For Free does not support private projects, is nothing more than address the needs within the enterprise, github: fi high price (the cheapest to $ 5,000 / year)

6. Based on git, the learning curve is steep, with large-scale enterprise git simply unrealistic. In particular, the country we all just learned to svn

7.github sometimes be a wall, or unstable

8. no integrated social sharing capabilities. For example, the back can share to microblogging, micro-channel circle of friends and so on. Before I was advised to do plug-ins, we have time to look at this.

 Trac :
             Pros: Very flexible, can be arbitrary customization.
Bugzilla :
             Advantages: (1) powerful search function.
                      (2) security audit mechanism.
                      (3) network user-friendly interface
                      (4) rich and varied configuration settings.
                      (5) security policies and detailed product classification scheme complete.
            Disadvantages: can only manage defects.
XCode the Apple :
            Advantages: (1) can automatically create a classification chart.
                     (2) automatically provides undo, redo and save functions without writing any code.
            Cons: After an updated version of a plug-in might fail.

Micrsoft TFS:    
Advantages: (1) from the source database storage (high performance)
                       (2) Seamless integration with development tools (simple)
                       (3) Source Management No storage limit (reliable)
                       (4) to support security at the file level, specific support scene file management, accidentally deleted recovery protection.
                       (5) integration and project tools, task tracking convenient, built-BUG management tools to improve development efficiency, management of the project life cycle test cases.
               Disadvantages: not intuitive to use them, more complicated operation steps.

Now currently available source code version management tools are Git , GitHub , in the Microsoft TFS , Bitbucket , Mercurial , Trac , Bugzilla , the Rational , the Apple XCode

 

Guess you like

Origin www.cnblogs.com/westweishao/p/11515581.html