2013年11月3日星期日

[ Java system Pragmatic Programmer ]

From 2002 came into contact with such a classic HelloWorld Java program learn to now it has been ten years unknowingly , decade

to hear a lot of large cattle presentations, projects seen God flying on the keyboard programming speed transport means , at the time

was shocked . When getting into the programming manual labor , we can have our own ideas, but also for the Java system-level practitioners

programmer thing ? Learning and practicing the following knowledge and skills to help you achieve an early desire.



one : Java Language Learning



right thread (thread), serialization , reflection, network programming , JNI technology, container (Map, List, Iterator), the class loader

(ClassLoader), input and output streams , garbage collection mechanism , a more in-depth understanding , at least as project applications . Have

Java project performance optimization through experience , at least master a performance monitoring tool use , familiar with JVM parameters , the most since

code know that you can specify a different startup of the JVM garbage collection mechanisms , as well as between different garbage collection mechanisms

differences familiar JVM parameter optimization .


two : J2EE aspects



JDBC specification is best to know how things back , if faced with the Oracle database JDBC driver can not tell you , you

OCI driver also know that there can be . Grasp the common SQL statements , familiar with JMS, JNDI and other components, to master a set of open web

hair model, from the foreground to the background , there is a good ability to integrate such a framework . Understand and grasp the MVC ideology, like SSH has been implemented

now the MVC layer, almost no re- implement your own , if you develop a simple Swing application, you can MVC

it shows you really grasp the essence of the MVC . Have the ability to build their own front-end development J2EE MVC pattern , knowing

What is WEB2.0, know what is SOA, SaaS, SaaP other means



Three: Understand and be able to make rational use design patterns , UML modeling



know and understand the design mode contains several basic principles , such as : Richter substitution principle , the principle of opening and closing , synthetic multiplexing principle ,

Dependency Inversion Principle have a good understanding and be able to illustrate . Commonly used design patterns such as factory mode, single -case model , the concept of

those observed pattern chain of responsibility pattern , flexible use bridge mode , etc. know , understand what is callback (Callback). Finally, a

words to sum ​​up an expert design pattern , which is to make the software easier to be someone else to read, easier to maintain and produce , design mold

style essence is communication between the programmer , if A design with a factory pattern to replace a module B , A just say that the module is

factory pattern implementation , B should be much easier to maintain them , so the design pattern is about communication, not about the code. Never abuse

Using design patterns . Learn how to use UML modeling tool familiar with at least one kind of URL modeling tools.



four : focus on the user experience , grasp the KISS principle , the principle that Ou Kamu razor



Customer is God that we have this slogan shouting N years , the fruits of labor of programmers eventually need to convert to service providers

supply customers, the user experience is essential, often see scenes that feature enables the software difficult to use, there is a programmer

very good reason I'm not art , in fact, focus on user experience with art also hit eight pole together , FoxMail success

In a large extent, the success of the user experience , friendly and clear user prompts , strong fault tolerance and error correction is designed to obtain good

the only way the user experience . Fool fool the camera will use the name suggests , this would famous KISS principle (Keep it

simple and stupid) means that UI design should be simple and clear, fool would know how to use one , think we do it

stuff , do not know how to use manual controls . Another one is the most famous example IPhone mobile phone designs, is

typical Ou Kamu razor HCI design principles to accomplish .



Five: automatic testing and software configuration management (SCM) to achieve



know what is software configuration management , know Hudson - http://java.net/projects/hudson/ use this tool SCM,

know how to obtain test code coverage , Java effective lines of code (NCSS), complete the firebug, JDepend other tools

integrated ant / maven. Familiar with and focus on the development process using JUnit unit testing , understanding white box specification.



six : Familiar with common network communication protocols



the HTTP protocol , knowing POST, GET What is the difference , read the HTTP-related RFC documents. Learn to use sniffer

tool to view data packets, to help find and debug the program , know the difference between TCP and UDP , to know and understand the E-Mail sent

with accepted protocols such as SMTP, POP3, IMAP and other protocols , understand MIME and Base64 encoding . Multicast is how to know

What things back .



Seven: market-oriented , always eager for new technology to keep



rapid development of computer technology , as the IT industry software developers to constantly recharge yourself , update their

technology to keep pace with the times , but also face the market, Huawei CEO Ren said - " Huawei's technological innovation must face

to the market ", as the programmers have the same awareness of the market , many people regret not in android just came out to be

concerned to learn. Those early concern android development techniques many programmers so richly rewarded . Today HTML5

get more and more manufacturers supported browser , you have to keep up the pace and start learning .



eight : remain modest , three lines must be my teacher



Joe closer said he wanted to maintain the beginning of the heart , study hard , I'll wait should remain modest , IT technology advancing rapidly, in your eyes

impossible to achieve technical , maybe someone else already has ideas . Remain humble someone else have the opportunity to learn from the strengths of the ancients

goes: Pride hurts , modesty benefits. An expert Tao is said that "the next servant , on Sophia ," the Zen koan . Never refuse

must help the people around you to solve problems, to solve problems is the fastest way to progress . Do not give up any one can upgrade their skills

technique and ability opportunities.



IX: Summary develop the habit of constantly reflect



school when teachers often make written summary, summed up why they did not , so that the work will never speak of it exists thing,

After completing each project proposal has a summary of their own , summing up his inside what they learned in the project , he can not ask

can be completed without help from others in the case of such a system to build yourself , are familiar with the use and mastery of the project

technology, even if some things are not done , but you are responsible for what can stop a heart knowledge , to try to summarize details

detail records you meet those challenges is how to solve one by one , the next time you encounter you can quickly solve or avoid

this problem. Is summed only improve Confucius: Learning without thought is labor lost , if we just coding to vomit blood , do not

thinking, does not improve the summary , never have to have essentially improved, Qin Li Si goes: "Tarzan let the soil , it can

it great , Hohai not the small streams , it can on its depth , " and accumulate constantly sum can only lead to quantitative qualitative change .



Ten: mathematical skills and knowledge Algorithms



develop applications using any programming language , are inseparable from the support of the core algorithm , many foreign software only from the UI point of view, I am afraid to write

few people can imitate the program , but the UI under the shades of those real , I do not believe you want to imitate you can die

fake , and why we are getting the cottage , because we have no core competencies, algorithms and math for programmers apparently

is his most important core competitiveness. "Introduction to Algorithms ", " Programming Pearls " and the book is definitely worth reading ten times . Microsoft Asia

Institute of Visual Computing Group Leader said in a speech to recruit people their standards are "good student - good at math , programming

good attitude . " But the reality of the general situation is - Microcomputer Principle downtown crisis , assembly language will not change, real variable learning

ten times . Basic computer knowledge generally ignored by everyone . Starting today, learn it ......



eleven : Java code decompilation and code protection



Java compiler generates bytecode , which can be easily reverse engineering ( decompilation ) , Microsoft's C # can be produced by the same DLL

to be easily decompiled . For this reason, the official produced a number of Java open source code protection tool, Proguard is

the most outstanding , have been integrated in google android Java code being used to protect access here to learn more :

http://proguard.sourceforge.net/



XII: strive to become the backbone of an industry or field



face long career , in order not to be eliminated , you must have a fresh recruit eat around the world the ability to choose their own interest

direction , efforts and in-depth research into the development of computer technology today has broken down very thin, hard studying a Java open source

frameworks or open source HTTP server source code or source code or web crawlers studied WEBKIT kernel , no one should worry about

you . If you are very familiar with finance, corporate ERP, securities, insurance, mobile application industry application development business people ,

do not worry , like work . This knowledge does not change with different languages ​​, and strive to do a core competitiveness of Java programmers .



thirteen: improve language and writing skills , master the basic knowledge of project management





documents and language skills to the outside world is the best way to show their capabilities , many programmers programming ability is high, the expression

abilities , Linux to be successful, in addition thanks to the power of online communities , but also thanks to the author to each Linux

Big Foundation wrote , promotion , imagine if there is no good written language skills , even if the Linux system then outstanding ,

but can not be accurately expressed , lost the support of major foundations , Linux will be like the situation today is such a good thing . So pay attention

documents, keen to enhance communication and presentation skills , are likely to become Java system programmer. Master the basic 2 / 8 principles , learning

module refinement would be assigned to different people , anticipate and control project risks , seize the project schedule, optimize processes , reasonable time

between management, understanding TDD, familiar with agile development model, conventional software development model .



fourteen : master the English language , good reading and writing skills



English is the computer's native language, mastering English for reading English learning new techniques of great help , my suggestion is to try

read English Books , if it is on the algorithm may be a bit harder , but others like design patterns , software engineering , OO

try to read the original programming ideas , etc. , to improve their English skills , a lot of access to the developer , code project, programmers heaven ,

Pc-magazine and other English IT website . English is definitely you have to practice and improve skills. Besides English and good foreign

especially important , only foreign language is good enough it may break in the foreign-funded enterprises in vocational bottlenecks upward .
------ Solution ---------------------------------------- ----

- ----- Solution --------------------------------------------
java king , both thumbs , which means that good ah.
------ Solution ---------------------------------------- ----
good summary
------ Solution ------------------------------ --------------

------ Solution ---------------------------------- ----------

--- --- Solution --------------------------------------------
learn
------ Solution --------- -----------------------------------

------ Solution ------------- -------------------------------
hey , way long ah
------ Solution --------------------------------------------
top ! ,
------ Solution ------------------------------------ --------
figure is very interesting
------ Solution - -------------------------------------------
work and struggle !
------ Solution ---------------------------------------- ----
chang. . .
------ Solution ---------------------------------------- ----
this , so half of them are not all that can be easily tens of thousands / months. . . Content is very substantial ah , I want to learn from him.
------ Solution ---------------------------------------- ----
in progress

------ Solution ------------------------------------ --------
long Way ah
------ Solution - -------------------------------------------
big gap ah , you can not play anymore , forward it to the front
------ Solution ----------------------------- ---------------
I rely on, after reading it I found myself up to now has consequently not it , to say the very familiar with java language can be compared with the even if I have just started , to say the words of the industry , and now I do not know what industry you sure you want dry , chaos ah. . . .
------ Solution ---------------------------------------- ----
learned 1
------ Solution ------------------------------ --------------
this ? ? A master can do half the domestic thing ?
------ Solution ---------------------------------------- ----
I like to see a "Chairman Mao ," the picture is
------ Solution --------------------- -----------------------
hope that their future will be such a person .
------ Solution ---------------------------------------- ----
this . . . . I'm not against what this novice user . . After engaging in this estimate I have hung up
------ Solution -------------------------------- ------------
Charge ah ah ah ah ah
------ Solution ------------------ --------------------------
reading found that I need to learn a lot, but fortunately far ah, now learn java afraid to even start the question. . . Pressure . .
------ Solution ---------------------------------------- ----
really good look summarize , learn the job . . . The
------ Solution --------------------------------------- -----
first and the second thing is the java program ape , the latter related to language irrelevant
------ Solution --------- -----------------------------------
learn ! Write really good !
------ Solution ---------------------------------------- ----
big and empty nonsense , no actual operability.
------ Solution ---------------------------------------- ----
good !
------ Solution ---------------------------------------- ----
road ahead Seoul repair Xi Yuan , to be a qualified program is not an easy thing .
------ Solution ---------------------------------------- ----
java along the way
------ Solution ----------------------------- ---------------
top ! ! !
------ Solution ---------------------------------------- ----
learned
------ Solution ------------------------------- -------------
thank landlord , I am now really is a bit in the bottleneck stage , and not knowing what to learn which direction to development , is now really feel Daigo initiations , ah, like to thank the
------ Solution --------------------------------- -----------
learn, know that learning orientation Thank landlord
------ Solution ----------- ---------------------------------
feel useful , decisive collection
---- - Solution --------------------------------------------
every word Abas ah flattered Thank landlord
------ Solution ---------------------------- ----------------
good summary ah ! !
------ Solution ---------------------------------------- ----
extremely difficult ah
------ Solution ----------------------------- ---------------
Oh, way to go ah. There are a lot to learn ah. . .
------ Solution ---------------------------------------- ----
long way to go
------ Solution ------------------------------ --------------
long way to go . Insists that efforts ......
------ Solution ----------------------------------- ---------
lcm see the answer !
------ Solution ---------------------------------------- ----
java long road it
------ Solution ---------------------------- ----------------
just started reading only to find himself . There are a lot of things to do
------ Solution ---------------------------------- ----------
perhaps some life can not reach the target , but surely their efforts .
------ Solution ---------------------------------------- ----
benefited
------ Solution ------------------------------- -------------
sophomore before touching
------ Solution ------------------- -------------------------
and the king of mutual encouragement
------ Solution --------- -----------------------------------
years of experience , is a summary of their own do ?
------ Solution ---------------------------------------- ----
speak good, emotionally
------ Solution ------------------------ --------------------
hey , after reading these things , she felt too much difference , too poor, I estimate the power of life and see can not achieve this level of ... light algorithm , we get it working , and now ...
------ Solution ------------------- -------------------------
I was a novice in the rookie
------ Solution ------ --------------------------------------
rookie lost %%%% %% %
action after graduation , founding section does not even have a holiday , hey ......
------ Solution ---------------------- ----------------------
ashamed . . . .
------ Solution ---------------------------------------- ----
landlord powerful, stood out whole , do a qualified programmers really want to learn more things !
------ Solution ---------------------------------------- ----
each person's path is very long
------ Solution -------------------------- ------------------
taught it.
------ Solution ---------------------------------------- ----
there a javA c + + C # like the group , ah, facilitate my advice to you seniors , beginners
------ Solution ------- -------------------------------------
reading only to find themselves still things to learn there are many, many . . .
------ Solution ---------------------------------------- ----
cattle ah ! Admire !
------ Solution ---------------------------------------- ----


Oh , lz I only work for a year , nothing good summary
------ Solution --------------------- -----------------------
mark!
------ Solution ---------------------------------------- ----
endorses learning ~ ~ ~ ~

+ +

------ Solution ------------------------------------ --------
top of what you learn from the beginning of 2002 I 2012 I stood on your shoulders began to learn to learn 10 years later, I have summed Education posterity certainly better than hello Oh
------ Solution ---------------- ----------------------------
began to struggle to be
------ Solution ----- ---------------------------------------
top one, and then enhance learning
------ Solution ------------------------------------------ -
java long way to go !
------ Solution ---------------------------------------- ----
voice of experience ah ~
------ Solution ---------------------------- ----------------
well studied
------ Solution ---------------- ----------------------------
good good
------ Solution ------- -------------------------------------
perfect
------ Solution --------------------------------------------
go long way to go that way , step by step
------ Solution ------------------------------ --------------
little inspiration , thanks
------ Solution ------------------ --------------------------
write great
------ Solution ------ --------------------------------------
top , thank you for sharing
- ----- Solution --------------------------------------------

----- - Solution --------------------------------------------
landlord powerful, stood out whole , better. Favorite learning
------ Solution -------------------------------------- ------
learned
------ Solution ----------------------------- ---------------
Thank you for sharing , the landlord is very hard, admire
------ Solution ------------ --------------------------------
good !
------ Solution ---------------------------------------- ----
mark
------ Solution -------------------------------- ------------
gosh 10 years ! ! ! ! ! ! !
------ Solution ---------------------------------------- ----
encouragement it
buddy child
------ Solution ---------------------------------- ----------
good , I feel very at ease this decade
------ Solution ------------------- -------------------------
summary ah well, I want to learn it.
------ Solution ---------------------------------------- ----
  This reply was moderator deleted at 2012-07-09 09:17:17

------ Solution ------------------------------------ --------
write well , ah, teachable , ah .
------ Solution ------------------ --------------------------
What can I say, you get it.
---- - Solution --------------------------------------------
xuexi I am a student , I want to study hard. .
------ Solution ---------------------------------------- ----
mark
------ Solution -------------------------------- ------------
cow ! ! Top a
------ Solution -------------------------------------- ------
top , yes ...
------ Solution ------------------------- -------------------
found that many are not read -_-
------ Solution --------- -----------------------------------
good good !
------ Solution ---------------------------------------- ----
top of a bar , and finally a serious agreed
------ For reference only ----------------------- ----------------
completely I hematemesis decade experience !
------ For reference only -------------------------------------- -
reading only to find themselves there are many things to learn a lot . . .
------ For reference only -------------------------------------- -
mark!
------ For reference only -------------------------------------- -
  This reply was moderator deleted at 2012-06-29 10:37:15

没有评论:

发表评论