さぞざぞãĒプログナミãƒŗã‚°č¨€čĒžã¨ããŽã‚ĸプãƒĒã‚ąãƒŧã‚ˇãƒ§ãƒŗ。 YandexでぎčŦ›įžŠ

äģŠåš´ãŽæœ€åˆãŽæŠ•į¨ŋは、非常ãĢåŸēæœŦįš„ãĒトピック、Small ShADでぎčŦ›įžŠãĢ専åŋĩすることãĢしぞした。 テクノロジãƒŧãĢ興å‘ŗぎあるéĢ˜æ Ąį”ŸãŒå‚加しãĻいるため、プãƒŦã‚ŧãƒŗテãƒŧã‚ˇãƒ§ãƒŗぎį‰šį•°æ€§-čŦ›įžŠã¯ãƒ—ログナムを始めたばかりで、おぎ斚向ãĢé€˛ã‚€ãšãã‹ã‚’č€ƒãˆãĻいるäēēãĢとãŖãĻį‰šãĢ興å‘ŗæˇąã„ã‚‚ãŽãĢãĒりぞす。 åŊŧらぎためãĢ、YandexãĢは「プログナミãƒŗグå…Ĩ門īŧˆC ++īŧ‰ã€ã¨ã„うã‚ŗãƒŧ゚があり、Stepic.orgプナットフりãƒŧムで受čŦ›ã§ããžã™ã€‚

čŦ›å¸ĢミハイãƒĢãƒģグ゚トã‚Ģã‚ˇãƒŗ-Yandexぎå­ĻčĄ“ãƒ—ãƒ­ã‚°ãƒŠãƒ ãŽã‚­ãƒĨãƒŦãƒŧã‚ŋãƒŧ、HSEã‚ŗãƒŗピãƒĨãƒŧã‚ŋãƒŧã‚ĩイエãƒŗã‚šå­Ļ部ぎå­Ļį”Ÿã‚ĒãƒĒãƒŗピックã‚ģãƒŗã‚ŋãƒŧぎデã‚ŖãƒŦクã‚ŋãƒŧ。 ミハイãƒĢã¯ã€å…¨ãƒ­ã‚ˇã‚ĸプログナミãƒŗグã‚ĒãƒĒãƒŗピックぎ多数ぎ受čŗžč€…と受čŗžč€…ã‚’æē–備しぞした。



čŦ›įžŠã§ã¯ã€ãƒ—ログナミãƒŗã‚°č¨€čĒžã¨ã¯äŊ•ã‹ã€ãŠãŽã‚ˆã†ãĢį•°ãĒるぎか、おぎようãĢ襨į¤ēã•ã‚Œã‚‹ãŽã‹ã€ãŠãŽč¨€čĒžãŒã‚ˆã‚Šč‰¯ãã€ãŠãŽč¨€čĒžãŒã‚ˆã‚Šæ‚ĒいぎかãĢついãĻčĒŦ明しぞす。 初めãĢã€č¨€čĒžãŽæ­´å˛ãĢついãĻå°‘ã—čŠąã‚’ã—ãžã™-言čĒžãŒãŠãŽã‚ˆã†ãĢįžã‚ŒãŸãŽã‹ã€äēē々がおぎようãĢプログナムを始めたぎか、すずãĻがおぎようãĢį™ēåą•ã—ãŸãŽã‹ã€äģŠäŊ•ãŒčĩˇã“ãŖãĻいるぎか。 įŦŦäēŒéƒ¨ã§ã¯ã€ãŠãŽč¨€čĒžãŒéŠåˆ‡ã‹ã€ãŠãŽã‚ˆã†ãĢ「お気ãĢå…Ĩã‚ŠãŽč¨€čĒžã‚’選択しãĻäēēį”Ÿã‚’æĨŊしむか」ãĢついãĻč§Ļれぞす。 čŦ›å¸Ģはぞた、åŊŧぎ意čĻ‹ã§ã¯ã€ã“れをすずãĻå­Ļãŗ、äģ•äē‹ãĢå°ąãæ–šæŗ•ãĢついãĻも少しčĒŦ明しぞす。

いつもぎようãĢ、ã‚Ģãƒƒãƒˆã‚ˇãƒŧãƒŗぎ下ãĢはčŦ›įžŠãŽčŠŗį´°ãĒトナãƒŗ゚クãƒĒãƒ—ãƒˆãŒã‚ã‚Šã€ããŽå†…åŽšã‚’ãƒŠãƒ“ã‚˛ãƒŧトできぞす。

プログナミãƒŗã‚°č¨€čĒžãŽæ­´å˛


最初から始めぞしょう。 åŊ“初、ã‚ŗãƒŗピãƒĨãƒŧã‚ŋãƒŧãĢはキãƒŧボãƒŧドさえありぞせんでしたīŧ つぞり、すずãĻが非常ãĢæ‚ĒかãŖた-åŊŧらはキãƒŧボãƒŧドやį”ģéĸを持ãŖãĻいãĒかãŖた、 パãƒŗチã‚ĢãƒŧドがあãŖたīŧˆã“れらはįŠ´ãŽã‚るもぎやįŠ´ãŽãĒいもぎですīŧ‰ã€‚ したがãŖãĻ、ピãƒŗがそこãĢįĒãåˆēされたか、ぞたはそこãĢ光がčŧã„ãĻいぞした。 įŠ´ãŒã‚る場合īŧˆãžãŸã¯ããŽé€†īŧ‰-0ぞたは1を意å‘ŗしぞす。 ぞた、åŊ“æ™‚ãŽãƒ—ãƒ­ã‚°ãƒŠãƒ ã¯ãƒžã‚ˇãƒŗã‚ŗãƒŧドをäŊŋį”¨ã—ãĻ記čŋ°ã•ã‚ŒãĻいぞした。ã‚ŗãƒŗピãƒĨãƒŧã‚ŋãƒŧ上ぎ各操äŊœīŧˆåŠ įŽ—、減įŽ—ã€ã‚ˆã‚Šč¤‡é›‘ãĒ操äŊœīŧ‰ãĢは、あるį¨ŽãŽãƒžã‚ˇãƒŗã‚ŗãƒŧドがありぞした。 äēē々č‡ĒčēĢがã‚ŋブãƒŦット上でこぎã‚ŗãƒŧãƒ‰ã‚’é¸æŠžã—ã€ãƒĄãƒĸãƒĒ内ぎあらゆるį¨ŽéĄžãŽã‚ĸドãƒŦ゚を手ãĢå…Ĩれ、それらをすずãĻ手でノックã‚ĸã‚ĻトしãĻãƒĒãƒŧダãƒŧãĢčŠ°ã‚čžŧãŋぞした。 ã‚‚ãĄã‚ã‚“ã€ãƒ—ãƒ­ã‚°ãƒŠãƒžãƒŧぎäģ•äē‹ã¯ã€ãŠãã‚‰ããã‚ŒãģãŠčˆˆå‘ŗæˇąã„ã‚‚ãŽã§ã¯ã‚ã‚Šãžã›ã‚“ã§ã—ãŸ-įŠ´ã‚’開けること-そしãĻ、į§‘å­Ļã¨æŠ€čĄ“ãŽé–‹į™ēã§ã€ã‚‚ãĄã‚ã‚“ã€åŊŧらはあらゆるį¨ŽéĄžãŽã‚ˆã‚Šã€Œčˆˆå‘ŗæˇąã„ã€ã‚‚ãŽã‚’æ€ã„ã¤ãå§‹ã‚ãžã—ãŸã€‚ 䞋えば、すでãĢややį°Ąå˜ãĢãĒãŖたã‚ĸã‚ģãƒŗブナãƒŧīŧˆAssemblerīŧ‰ã€‚

さãĻ、åŊŧはおぎようãĢäēēį”Ÿã‚’æĨŊãĢしぞしたかīŧŸ チãƒŧムãĢはäŊ•ã‚‰ã‹ãŽã€Œé­”æŗ•ãŽã€ã‚ŗãƒŧドがあることを思いå‡ēすäģŖわりãĢ、「äēēé–“ã€ãŽč‹ąčĒžãĢäŧŧたあらゆるį¨ŽéĄžãŽå˜čĒžãŒäŊŋį”¨ã•ã‚Œãžã—た-äŊ•ã‚‰ã‹ãŽį¨ŽéĄžãŽaddぞたはmov-よく、そしãĻãƒŦジ゚ã‚ŋãžãŸã¯ãƒĄãƒĸãƒĒ領域、これらぎ変数į”Ÿį”Ŗする操äŊœã€‚ しかし、これは一čˆŦãĢ、おぎãƒŦジ゚ã‚ŋが存在するぎか、おぎ変数がおこãĢあるぎか、一čˆŦãĢäŊ•ãŒčĩˇã“るぎかをčĻšãˆãĻおくためãĢ、十分ãĒ量ぎį˛žįĨžįš„ãĒåŠĒ力もåŋ…čĻã§ã‚ることは明らかです。 ãĒぜこれがčĩˇã“ãŖたぎですかīŧŸ ã‚ŗãƒŗピãƒĨãƒŧã‚ŋãƒŧは「愚か」で、それäģĨ上「゚マãƒŧト」ãĒもぎをį†č§ŖできãĒかãŖたからです。 原際、ã‚ĸã‚ģãƒŗブナãƒŧã‹ã‚‰ãƒžã‚ˇãƒŗã‚ŗãƒŧドをã‚ĸã‚ģãƒŗブãƒĢするãĢã¯ã€æ™‚é–“ã‚‚ãƒĄãƒĸãƒĒもかかりぞすīŧˆã‚‚ãĄã‚ã‚“ã€ããŽæ™‚į‚šã§ã¯ååˆ†ã§ã¯ã‚りぞせんでしたīŧ‰ã€‚

垐々ãĢ、こぎようãĒ大čĻæ¨Ąã§č¤‡é›‘ãĒプログナムぎ開į™ēは非常ãĢé›Ŗしいことが明らかãĢãĒりぞした。 これらぎã‚ŗマãƒŗドでぎプログナマãƒŧぎį”Ÿį”Ŗ性は非常ãĢäŊŽã‹ãŖた-つぞり、åŊŧは1æ—ĨãĢæ•°čĄŒīŧˆæ„å‘ŗぎあるīŧ‰æ›¸ãã€å„čĄŒã¯į‰šåˆĨãĒことはäŊ•ã‚‚しãĒかãŖた-いくつかぎ単į´”ãĒįŽ—襓æŧ”įŽ—。 そしãĻäēē々は、プログナムを書くぎがよりį°Ąå˜ã§äžŋ刊ãĢãĒるようãĢã€č¨€čĒžã‚’äēēé–“ãŽč¨€čĒžã€į‰šãĢ英čĒžãĢもãŖとäŧŧたもぎãĢしたかãŖたぎです。 そしãĻå‡ēį™ēīŧ

å¤ã„čˆŒã¨æ­ģã‚“ã čˆŒ


æœ€åˆãŽč¨€čĒžãŽ1つはFortranでした。 ãĄãĒãŋãĢ、åŊŧはパãƒŗチされたã‚Ģãƒŧドでbeatられぞした-Fortranでプログナムをノックã‚ĸã‚Ļトするためぎį‰šåˆĨãĒパãƒŗチされたã‚Ģãƒŧドがありぞした。 しかし、こぎFortranをäģŠã™ãäŊŋį”¨ã™ã‚‹ã¨ã€į§ãŽæ„čĻ‹ã§ã¯ã€50〜60ぎ間ですらありぞす。 į™ģå ´-それãĢäŊ•ã‹ã‚’書こうとすると、それはあãĒたãĢとãŖãĻ非常ãĢ不åŋĢãĢãĒりぞす、į§ã¯ã‚ãĒたをäŋč¨ŧしぞすīŧ įžäģŖぎFortranはぞだį”ŸããĻいぞすが、すでãĢäģĨ前ぎもぎとはかãĒりį•°ãĒãŖãĻいぞす。

äģ–ãŽč¨€čĒž-ãŠãã‚‰ãčžã„ãŸã“ã¨ãŒã‚ã‚‹ã‹ã‚‚ã—ã‚Œãžã›ã‚“ãŒã€ãƒ—ãƒ­ã‚°ãƒŠãƒŸãƒŗã‚°ãŒæ­´å˛ãĢついãĻčĒžã‚‰ã‚Œã‚‹ã‚¤ãƒ™ãƒŗトでぎãŋこれを書きぞす-これはCOBOLです。 これは、ビジネ゚ã‚ĸプãƒĒã‚ąãƒŧã‚ˇãƒ§ãƒŗをäŊœæˆã™ã‚‹ãŸã‚ãŽč¨€čĒžã§ã—た。 ビジネ゚ã‚ĸプãƒĒã‚ąãƒŧã‚ˇãƒ§ãƒŗとは éŠ€čĄŒã§ãŽã„ãã¤ã‹ãŽå–åŧ•ã€äģ–ぎäŊ•ã‹ã€ã“れらすずãĻはKobolで書かれぞした。 ã‚‚ãĄã‚ã‚“ã€į§ãŸãĄãĢとãŖãĻはあぞりäēē気がありぞせん。 ãƒĸ゚クワぎKobolぎプログナマãƒŧãĒら、あãĒたは非常ãĢ困é›Ŗを感じるでしょう。 そしãĻ、ãƒĸ゚クワではãĒいおこかãĢ、さらãĢ大きãĒ困é›Ŗがありぞす。 しかし、銚くずきことãĢ、10嚴前、äēēéĄžãŒæ›¸ã„ãŸã™ãšãĻぎã‚ŗãƒŧドぎ半分äģĨ上がKobolで書かれãĻいぞした。 そしãĻäģŠãžã§ã€ã™ãšãĻãŽéŠ€čĄŒå–åŧ•ãŽå¤§éƒ¨åˆ†ã¯ã€ãã‚ŒãĢ書かれたプログナムīŧˆCOBOLīŧ‰ã‚’äŊŋį”¨ã—ãĻåŽŸčĄŒã•ã‚Œã€äēē々はぞだäŊ•ã‹ã‚’書いãĻいぞす。

「éĸį™Ŋã„ã€č¨€čĒžã‚‚ありぞす。それはã‚ĸãƒĢゴãƒĢとå‘ŧばれãĻいぞしたīŧˆ68į•Ēį›ŽãŽãƒãƒŧジョãƒŗで、äŊœæˆåš´ã‚’į‰šåž´äģ˜ã‘ã‚‹īŧ‰ã€‚ これはã‚ĸãƒĢゴãƒĒã‚ēãƒ č¨€čĒžã§ã™ã€‚ 一čˆŦįš„ãĢ、åŊŧらはそこでäŊ•ã‹ã‚’することができぞしたが、äģŠã¯åŊŧらがäŊ•ãŒã§ãã‚‹ã‹ãĢã‚ãžã‚Ščˆˆå‘ŗがありぞせん。 そしãĻ、これで古äģŖと比čŧƒįš„æœĒäŊŋį”¨ãŽč¨€čĒžã¸ãŽé čļŗを厌äē†ã§ãã€ãžã į”ŸããĻいるīŧˆãã—ãĻæ´ģį™ēãĢį”ŸããĻいるīŧ‰ã‚‚ぎãĢé€˛ã‚€ã“ã¨ãŒã§ããžã™ã€‚

古いがį”ŸããĻã„ã‚‹č¨€čĒž


Algolはヨãƒŧロッパでį™ē明され、Fortranはä¸ģãĢįąŗå›ŊでäŊŋį”¨ã•ã‚Œãžã—た-大きãĒ違いはありぞせん。 おぎようãĒå‚žå‘ãŒéĄ•č‘—ã§ã™ã‹īŧŸ 最初はすずãĻãŒč¤‡é›‘ã§ã€æ›¸ããŸã‚ãĢは、ãģã¨ã‚“ãŠãŽæŠ€čĄ“č€…ã€é›ģæ°—æŠ€čĄ“č€…ã§ã‚ã‚Šã€ãŠãŽæŽĨį‚šãŒé–‰ã˜ã‚‰ã‚ŒãĻいるか、プログナミãƒŗグぎためぎäŊ•ã‹ã‚’į†č§Ŗするåŋ…čĻãŒã‚りぞした。 それから、小さãĒč‘‰ã§åē§ãŖãĻã€č¨˜æ†ļをčĒ­ãŋã€ãã‚ŒãŽä¸–čŠąã‚’ã™ã‚‹ã“ã¨ãŒåŋ…čĻã§ã—た。 そしãĻ垐々ãĢ、プログナマãƒŧãĢとãŖãĻすずãĻãŒã‚ˆã‚Šã‚ˇãƒŗプãƒĢãĢã€ã‚ˇãƒŗプãƒĢãĢã€ã‚ˇãƒŗプãƒĢãĢ、そしãĻさらãĢã‚ˇãƒŗプãƒĢãĢãĒりぞした-äēēãĢã§ãã‚‹é™ã‚Šč€ƒãˆãšã€å¯čƒŊãĒ限りč‡Ē動įš„ãĢčĄŒã„ãžã™ã€‚ こぎ期間ぎįĩ‚わりごろīŧˆčŦ›å¸Ģはã‚ĸãƒĢゴãƒĢとã‚ŗボãƒĢを指しãĻいぞすīŧ‰ã€č¨€čĒžã¯ã‚る意å‘ŗでäģŠæ—Ĩぞで「į”ŸãæŽ‹ãŖた」ようãĢčĻ‹ãˆå§‹ã‚ãžã™ã€‚

ベãƒŧã‚ˇãƒƒã‚¯ 。 おそらくäŊ•äēēかぎäēē々はぞだそれãĢついãĻäŊ•ã‹ã‚’書いãĻいぞす、少ãĒくともį§ã¯ã„くつかぎå­Ļæ Ąã§åŊŧらがQBasicをå­ĻãļぎをčĻ‹ãžã—た、「1989ã€ã‚’č¨€ã†ããŽã‚ˆã†ãĒ青いįĒ“。 一čˆŦįš„ãĢ、「力とä¸ģ力で」į”Ÿããžã™īŧ éžãƒ—ãƒ­ã‚°ãƒŠãƒžå‘ã‘ãŽč¨€čĒžã¨ã—ãĻč€ƒæĄˆã•ã‚Œãžã—ãŸã€‚ åŊ“時、プログナマãƒŧは非常ãĢ専門įš„ãĒ聡æĨ­ã§ã—た。 そしãĻ、ここでåŊŧらはあãĒたãĢč¨€ã„ãžã™īŧšã€Œã“こãĢį§ãŸãĄã¯ã‚¯ãƒŧãƒĢãĒBasic言čĒžãŒã‚り、合į†įš„ãĒäēēãĒらčĒ°ã§ã‚‚それをäŊŋãŖãĻプログナムをäŊœæˆã—ぞす-それはį°Ąå˜ã§ã™ã€‚ įš°ã‚Ščŋ”しãĢãĒりぞすが、そぎBasicと最新ぎBasicは大きãĒ違いです。 10ぎį•ĒåˇãŒäģ˜ã‘ã‚‰ã‚ŒãŸã“ã‚Œã‚‰ãŽčĄŒãŽã™ãšãĻぎį¨ŽéĄžã€ã™ãšãĻぎį¨ŽéĄžãŽGOTOおよãŗそぎäģ–ぎ恐怖-それらはįžäģŖぎBasicとはé–ĸäŋ‚がãĒく、Basic 89とはãģとんおé–ĸäŋ‚がありぞせん。

åˆĨぎéĸį™Ŋã„čŠąã¯ã€ä¸ģãĢãƒ­ã‚ˇã‚ĸと旧ã‚Ŋビエトé€Ŗé‚Ļぎå›Ŋ々ぎ大å­Ļį•Œã§åēƒãįŸĨられãĻいるパ゚ã‚ĢãƒĢ言čĒžã§ã™ã€‚ 銚くãģおå­Ļįŋ’言čĒžã¨ã—ãĻäŊŋį”¨ã•ã‚Œįļšã‘ãĻいぞす。 世į•ŒãŽäģ–ぎ地域では、それはあぞり一čˆŦįš„ではありぞせんが、į”Ÿæ´ģとį”Ÿæ´ģです。 そぎようãĒäēēぎワãƒŧ゚がありぞす-ここでåŊŧはį§‘å­Ļč€…ã€į†čĢ–åŽļです。 åŊŧはã‚ĸãƒĢゴãƒĢãŽč­°čĢ–ãĢ参加し、äŊ•ãŒčĩˇã“ãŖたぎか気ãĢå…Ĩらず、č‡Ēåˆ†ãŽč¨€čĒžã§ã‚るパ゚ã‚ĢãƒĢを思いつきぞした。 そしãĻ、 Borlandぎäŧšį¤žīŧˆãŠã‚ˆãŗそぎ前ãĢäģ–ぎ多くぎäŧšį¤ž-į‰šãĢAppleがé–ĸ与しãĻいたäŧšį¤žīŧ‰ãŒãã‚Œã‚’取り、すずãĻを台į„Ąã—ãĢしぞした。 åŊŧはčĒŋ和ぎとれたįžŽã—いį†čĢ–を持ãŖãĻいぞした-「すずãĻがうぞくいく」-åŊŧらはäēē々がäģ•äē‹ãĢåŋ…čĻãĒもぎをそこãĢ取りčžŧã‚“ã§čŠ°ã‚ãžã—ãŸã€‚ ぞあ、それはåŊŧが望んだãģおįžŽã—くはãĒかãŖた。

そしãĻ最垌ãĢ、 C。 Xiはエãƒŗジニã‚ĸãĢよãŖãĻį™ē明されぞした。 Pascalがį§‘å­Ļ者ãĢよãŖãĻį™ē明された場合、CはKerniganとRitchieãĢよãŖãĻį™ē明され、åŊŧらはベãƒĢでエãƒŗジニã‚ĸとしãĻ働きぞした。 これはおぎようãĢčĩˇã“りぞしたかīŧŸ åŊ“æ™‚ã€ã“ã‚Œã‚‰ãŽč¨€čĒžã§äŊ“įŗģįš„ãĒもぎを書くことは不可čƒŊでしたīŧˆčŦ›å¸ĢはFortran、COBOL、Algolを指しãĻいぞすīŧ‰ã€‚ ã€Œã‚ˇã‚šãƒ†ãƒ ã€ã¨ã¯äŊ•ã§ã™ã‹īŧŸ たとえば、ã‚ĒペãƒŦãƒŧテã‚Ŗãƒŗã‚°ã‚ˇã‚šãƒ†ãƒ ã€ä¸€éƒ¨ãŽãƒ‰ãƒŠã‚¤ãƒãƒŧ、そぎäģ–。 ã“ã‚Œã‚‰ãŽč¨€čĒžã¯ã€æ•°å­Ļ計įŽ—ã€ãƒ“ã‚¸ãƒã‚šč¨ˆįŽ—、そぎäģ–すずãĻã‚’å¯žčąĄã¨ã—ãĻいぞす。 そしãĻ、äģ–ぎすずãĻはã‚ĸã‚ģãƒŗブナãƒŧで書かれぞした。 ã„ãã¤ã‹ãŽč¨€čĒžãŒã‚りぞしたが、それらはįžåœ¨æ­ģんでいぞす。つぞり、C言čĒžã¯ã‚ĸã‚ģãƒŗブナãƒŧからすぐãĢはįžã‚Œãžã›ã‚“でしたが、いくつかぎ中間įš„ãĒもぎを通しãĻįžã‚Œãžã—た。

ポイãƒŗトはäŊ•ã§ã™ã‹īŧŸ ã‚ąãƒĢニã‚ŦãƒŗとãƒĒッチãƒŧã¯å°æƒ‘æ˜ŸãŽãŠã‚‚ãĄã‚ƒã‚’éŠãļぎが大åĨŊきでした-åŽ‡åŽ™čˆšãŒéŖ›ã‚“ã§ã€å°æƒ‘æ˜ŸãŒã‚ã‚Šã€ãã‚Œã‚‰ã‚’æ’ƒãĄã€ãã‚Œã‚‰ãŒãƒãƒŠãƒãƒŠãĢãĒりぞす。 åŊŧらはプãƒŦイするã‚ĩãƒŧバãƒŧを持ãŖãĻいぞしたが、そこãĢはたくさんぎäēēがいぞした、そしãĻãŠã‚‚ãĄã‚ƒã¯é…ããĒりぞした。 そしãĻåŊŧらはã‚Ēフã‚Ŗ゚ぎおこかで、だれもäŊŋį”¨ã—ãĻいãĒいã‚ŗãƒŗピãƒĨãƒŧã‚ŋãƒŧを持ãŖãĻいることãĢ気äģ˜ããžã—た。 ã—ã‹ã—ã€å•éĄŒãŒã‚ã‚Šãžã—ãŸ-それはį•°ãĒるã‚ĸãƒŧキテクチãƒŖã‚’æŒãĄã€ã‚˛ãƒŧムはã‚ĸã‚ģãƒŗブナãƒŧで書かれぞした。

åŊŧらはそれを書きį›´ã—ãžã—ãŸã€ã‚‚ãĄã‚ã‚“ã€ãã‚Œã‚’å†į”Ÿã™ã‚‹ãŸã‚ãĢいくつかぎ抟čƒŊを掘りぞした。 しかし、これãĢより、新しいã‚ĸãƒŧキテクチãƒŖでぎ書き換えは毎回あぞりčŗĸくãĒã„ã¨ã„ã†č€ƒãˆãĢč‡ŗりぞした。 そしãĻ、åŊŧã‚‰ã¯ã€ã‚ˇã‚šãƒ†ãƒ ãƒ—ãƒ­ã‚°ãƒŠãƒŸãƒŗグãĢéŠã—ãŸã€ã¤ãžã‚ŠãƒĄãƒĸãƒĒをįŽĄį†ã™ã‚‹ã“とができ、äŊ•ã‹ãŒãŠã“ãĢã‚ã‚‹ãŽã‹ã€ã“ã‚Œã‚‰ãŽãƒĄãƒĸãƒĒãĢã‚ĸクã‚ģ゚する斚æŗ•ã‚’į†č§ŖすることができるようãĒ、éĢ˜ãƒŦベãƒĢãŽč¨€čĒžã‚’書くことãĢæąēめぞした。 そしãĻ、CãŽč¨€čĒžã‚‚į™ģ場しぞした。これは、すずãĻãĢさらãĢ大きãĒåŊąéŸŋを与えぞした。 それらすずãĻīŧˆčŦ›å¸ĢはAlgol、Fortran、およãŗč¨€åŠã•ã‚ŒãŸäģ–ãŽč¨€čĒžã‚’指しãĻいぞすīŧ‰ã¯å¤§ããĒåŊąéŸŋを及ãŧしぞしたが、C-そうです...

したがãŖãĻ、これはUnixぎä¸ģčĻč¨€čĒžã§ã‚り、ã‚ĒペãƒŦãƒŧテã‚Ŗãƒŗã‚°ã‚ˇã‚šãƒ†ãƒ ã§ã‚ã‚Šã€åŊ“時はäģŠã‚ˆã‚Šã‚‚さらãĢäēē気がありぞした。 80åš´äģŖ頃ぞでは、įŠļæŗã¯ã“ぎようãĒもぎでしたīŧˆčŦ›å¸ĢはBasic、C、およãŗäģ–ãŽč¨€åŠã•ã‚ŒãŸč¨€čĒžã§čĄ¨į¤ēしぞすīŧ‰ã€‚ こぎすずãĻがすでãĢį§ãŸãĄãŽãŸã‚ãĢæ­ģんでいるとしぞしょうīŧˆčŦ›å¸Ģはã‚ĸã‚ģãƒŗブナãƒŧ、Fortran、およãŗAlgolã¸ãŽč¨€åŠã‚’æļˆåŽģしぞすīŧ‰...さらãĢæĨŊしい。

80åš´äģŖãĢå›ēæœ‰ãŽč¨€čĒž


最初ぎåĨ‡åĻ™ãĒį‚šãŽ1つはC ++でした。 C言čĒžãĢは多くぎæŦ į‚šãŒã‚りぞすīŧˆãžã‚、一čˆŦįš„ãĢã¯åˇ¨å¤§ã§ã™īŧ‰-č„šã§č‡Ē分を撃つ、フã‚Ŗã‚¯ã‚ˇãƒ§ãƒŗã§č„šã‚’æ’ƒã¤ã€äģ–ぎčļŗで、į‰‡čļŗをäģ–ぎčļŗで撃つãĒお、すずãĻã‚’čĄŒã†ã“ã¨ãŒã§ããžã™-一čˆŦįš„ãĢäŊ•ã§ã‚‚する。 しかし同時ãĢ、いくつかぎã‚ĸãƒŧキテクチãƒŖ上ぎäŊœæĨ­ã¯éžå¸¸ãĢ困é›Ŗです-再ãŗ、ã‚ĸã‚ģãƒŗブナãƒŧぎようãĢ、į§ãŸãĄã¯ãŠã“ãĢ、äŊ•ã‚’ã€ãŠãŽãƒĄãƒĸãƒĒã‚’å‰˛ã‚ŠåŊ“ãĻたかを常ãĢį›ŖčĻ–するåŋ…čĻãŒã‚りぞす。 それは常ãĢã“ãŽãƒĄãƒĸãƒĒぎおこかで「æĩã‚Œã€ãžã™ã€‚つぞり、į§ãŸãĄã¯å‰˛ã‚ŠåŊ“ãĻ、削除をåŋ˜ã‚Œã€äģ–ぎäŊ•ã‹ã‚’削除し、一čˆŦįš„ãĢãƒĄãƒĸãƒĒからクロãƒŧãƒĢしぞした-å¤šããŽå•éĄŒã‚’åŧ•ãčĩˇã“しぞした。

C ++は、開į™ēを厚易ãĢするC言čĒžã¸ãŽčŋŊ加ã‚ģットとしãĻ最初ãĢäŊœæˆã•ã‚Œãžã—た。 そぎとき、ã‚Ēブジェクト指向プログナミãƒŗグがæĩčĄŒãĢãĒり、äēē々はすずãĻã‚’éšŽåą¤ã¨ã—ãĻ記čŋ°ã™ã‚‹ã“とができると判断しぞした。つぞり、ボãƒŧãƒĢīŧˆæŠŊ蹥īŧ‰ã‚’æŒãĄã€ã‚ĩッã‚ĢãƒŧボãƒŧãƒĢ、バãƒŦãƒŧボãƒŧãƒĢ、åˆĨぎæŠŊčąĄãƒœãƒŧãƒĢをįļ™æ‰ŋしぞす。 ã€Œãƒ•ã‚Ąãƒƒã‚ˇãƒ§ãƒŠãƒ–ãƒĢãĒもぎãĢãĒãŖたぎで、「įžåœ¨ã€ã™ãšãĻをäŊ•ã‚‰ã‹ãŽéšŽåą¤æ§‹é€ ãŽåŊĸã§č¨˜čŋ°ã—ãĻいぞす。すずãĻがうぞくいき、äēēį”ŸãŒã†ãžãã„き、すずãĻがうぞくいき、それでįĩ‚わりです」。 ある意å‘ŗで、C ++はこぎã‚Ēブジェクトã‚ĸプロãƒŧチを原čŖ…しぞした。これは最初ぎã‚Ēブジェクト指向プログナミãƒŗã‚°č¨€čĒžã§ã¯ã‚りぞせんでしたが、非常ãĢ一čˆŦįš„ãĢãĒり、あらゆるį¨ŽéĄžãŽæŠŸčƒŊがį™ģ場し始めぞした。 同時ãĢ、C ++はīŧˆåŊ“時īŧ‰C言čĒžã¨ãģãŧ厌全ãĒäē’換性をäŋæŒã—ãĻいぞした; 99īŧ…ãŽã‚ąãƒŧ゚では、Cで書かれたプログナムはC ++としãĻæ­Ŗ常ãĢã‚ŗãƒŗパイãƒĢされ、同様ãĢ抟čƒŊしぞした。 これは、CからC ++へぎ切りæ›ŋえをį°Ąå˜ãĢすることをį›Žįš„としãĻいぞす。

ã‚Ēブジェクトã‚ĸプロãƒŧチīŧˆC ++īŧ‰ãĢ加えãĻ、標æē–テãƒŗプãƒŦãƒŧトナイブナãƒĒīŧˆ STL īŧ‰ãŒã™ããĢį™ģ場しぞした。 å­Ļæ Ąã§ã¯ãžã ãƒ‘ã‚šã‚ĢãƒĢを教えãĻいたäēēは、あãĒたが最初ãĢįĩ„ãŋčžŧãŋぎã‚Ŋãƒŧトを持ãŖãĻいãĒいことãĢ気ãĨいたと思いぞすīŧˆå¤äģŖぎ青いボãƒŧナãƒŗドパ゚ã‚ĢãƒĢでは、įžåœ¨ã¯ã™ã§ãĢ最新バãƒŧジョãƒŗですīŧ‰-䞋がありぞすīŧˆã‚Ŋãƒŧã‚šīŧ‰ä¸Ļずæ›ŋえ、ã‚ŗピãƒŧしãĻč˛ŧりäģ˜ã‘ることができぞす。 ただし、ここで整数をä¸Ļずæ›ŋえる場合、原数がåŋ…čĻãĒ場合、ここではį›¸äē’ãĢ比čŧƒã§ãã‚‹æ–‡å­—列がåŋ…čĻãĒ場合、ぞãŖãŸãåŒã˜ã“ã¨ã‚’čĄŒã†3つぎį•°ãĒるä¸Ļずæ›ŋãˆã‚’č¨˜čŋ°ã™ã‚‹åŋ…čĻãŒã‚りぞす。 これはあぞりよくありぞせん。C++ですぐãĢ襨į¤ēされãĒかãŖたテãƒŗプãƒŦãƒŧãƒˆã¯ã€ã“ãŽå•éĄŒã‚’ãšãŖとį°Ąå˜ãĢしぞした。 つぞり、äē’いãĢ比čŧƒã§ãã‚‹ã‚‚ぎをæ­Ŗ常ãĢã‚ŊãƒŧトするæŠŊčąĄãƒ—ãƒ­ã‚°ãƒŠãƒ ãŒã‚ã‚Šãžã—ãŸã€‚

90åš´äģŖぎ゚クãƒĒãƒ—ãƒˆč¨€čĒž


しかし、時間がæ­ĸぞãŖたわけではãĒく、80åš´äģŖãĢã¯å¤šããŽčˆˆå‘ŗæˇąã„ã“ã¨ãŒčĩˇã“ãŖãĻいぞした。 しかし、80åš´äģŖと90åš´äģŖぎ変わりį›Žé ƒãŽãŠã“かで、ã‚ŗãƒŗピãƒĨãƒŧã‚ŋãƒŧは非常ãĢå„ĒれたもぎãĢãĒãŖたため、æ—ĸãĢ非常ãĢåĨ‡åĻ™ã§éžåŠšįŽ‡įš„ãĒことができぞした。 į‰šãĢã€ã“ã‚Œã‚‰ã¯ãƒžã‚ˇãƒŗã‚ŗãƒŧドãĢã‚ŗãƒŗパイãƒĢされずãĢč§Ŗ釈される゚クãƒĒãƒ—ãƒˆč¨€čĒžã§ã—た。 BASICも時々č§Ŗ釈されぞしたが、これらぎ゚クãƒĒãƒ—ãƒˆč¨€čĒžã¯ä¸ģãĢワãƒŧドプロã‚ģãƒƒã‚ˇãƒŗグをį›Žįš„としãĻいぞした-たとえば、 Perl 、 Python īŧˆåŊ“時はあぞり有名ではありぞせんでしたīŧ‰ã€ PHP 、 Ruby-これらは1ã¤ãžãŸã¯č¤‡æ•°ãŽã‚šã‚¯ãƒĒãƒ—ãƒˆč¨€čĒžã§ã™åŊŧらはぞだį•°ãĒãŖたį¨‹åēĻãĢäŊã‚“でいぞすīŧˆåŊŧらはすずãĻ2000åš´äģĨ前、さらãĢずãŖと旊くįžã‚Œãžã—たīŧ‰ã€‚

これらはį‰šåŽšãŽã‚‚ぎであり、äģŠã§ã¯å¤šãäŊŋį”¨ã•ã‚ŒãĻいるため、少しčŠŗしくčĻ‹ãĻいきぞしょう。 ã‚ĸイデã‚ĸはäŊ•ã§ã™ã‹īŧŸ ã‚ŗãƒŗパイãƒĢしãĒいと、さらãĢå¤šããŽã“ã¨ãŒč¨ąå¯ã•ã‚Œãžã™ã€‚ たとえば、プログナムはそぎã‚ŗãƒŧドをčĻ‹ãĻäŊ•ã‚‰ã‹ãŽæ–šæŗ•ã§äŊŋį”¨ã§ããžã™ã€‚ åŊŧåĨŗはč‡Ē分ぎčēĢãĢäŊ•ãŒčĩˇã“ãŖãĻいるかをįŸĨãŖãĻいãĻ、これãĢより、やるずきことがたくさんありぞす。

Perlはワãƒŧドプロã‚ģãƒƒã‚ˇãƒŗグをį›Žįš„としãĻいぞした-åŊ“時、ã‚ŗãƒŗピãƒĨãƒŧã‚ŋãƒŧãĢはæ—ĸãĢå¤§é‡ãŽãƒĄãƒĸãƒĒãŒã‚ã‚Šã€ä¸€éƒ¨ãŽãƒ†ã‚­ã‚šãƒˆã‚’čŠ°ã‚čžŧã‚“ã ã‚Šã€ã“ãŽãƒ†ã‚­ã‚šãƒˆã‚’æ‰ąã†ãŽãĢåŊšįĢ‹ã¤äŊ•ã‹īŧˆãŸã¨ãˆã°ã€å˜čĒžãŽã‚Ģã‚Ļãƒŗト、äŊ•ã‹ãŽæ¤œį´ĸīŧ‰ãŒã‚りぞした。 しかし、į§ãŽæ„čĻ‹ã§ã¯ã€ãã‚Œã¯å°‘しį‹‚ãŖたäēē々ãĢよãŖãĻč¨­č¨ˆã•ã‚Œãžã—ãŸã€ãã‚ŒãĢついãĻぎそぎようãĒジョãƒŧクがあるぎでīŧšã€Œæ›¸ã‹ã‚ŒãŸæ–‡å­—ぎã‚ģットはįœŸį ãŽæ­Ŗしいプログナムです」。 į§ãŽæ„čĻ‹ã§ã¯ã€ã‚ãĒたはそれを書くことができるだけで、čĒ­ã‚€ã“とはできぞせん。 パãƒŧãƒĢã‚ŗãƒŧドをčĻ‹ãĻäŊ•ã‹ã‚’į†č§ŖしようとしãĻも、äŊ•ã‚‚わかりぞせん。 もしåŊŧぎことをもãŖとよくįŸĨãŖãĻいれば、äŊ•ã‹ã‚’į†č§Ŗできるかもしれぞせんが、ぞだ斚æŗ•ã‚’įŸĨãŖãĻいるäēēã€…ã‹ã‚‰čžã„ãŸã‚ˆã†ãĢ、åŊŧらは書きį›´ã™ãŽãŒį°Ąå˜ã ã¨č¨€ã„ぞす。 つぞり、プログナムはįŸ­ããĒり、そこãĢあるもぎをčĻ‹ã¤ã‘ãĻäŋŽæ­Ŗするよりも、書きį›´ã—がæœŦåŊ“ãĢį°Ąå˜ãĢãĒりぞす。

そぎ頃、90åš´äģŖ半ばãĢイãƒŗã‚ŋãƒŧネットがį™ģ場しぞした。 æœ€åˆã¯ãƒĄãƒŧãƒĢ、静įš„ãĒHTMLを備えたã‚ĩイトでしたが、äēē々はそこãĢäŊ•ã‚‰ã‹ãŽãƒ€ã‚¤ãƒŠãƒŸã‚¯ã‚šã‚’čŋŊåŠ ã—ãŸã„ã¨č€ƒãˆãĻいぞした。 したがãŖãĻ、これãĢはäŊ•ã‚‰ã‹ãŽį›¸äē’äŊœį”¨ãŒåŋ…čĻã§ã‚り、į›¸äē’äŊœį”¨ãŽãƒ—ロトã‚ŗãƒĢ、そしãĻ最も重čĻãĒことãĢは、ãƒĻãƒŧã‚ļãƒŧぎčĻæą‚ãĢåŋœã˜ãĻãƒĻãƒŧã‚ļãƒŧãĢ「吐きå‡ēす」これらぎ静įš„īŧˆæĄäģļäģ˜ãīŧ‰ãƒšãƒŧジぎį”Ÿæˆã‚’č€ƒãˆå‡ēしぞした。

一čˆŦįš„ãĢ、åŊ“時ぎįœŸį äģĨ外は遊合しぞせんでした。 į´”į˛‹ãĒCぞたはC ++ハãƒŗドナãƒŧã§č¨˜čŋ°ã™ã‚‹ãŽã¯æ‚Ēã„č€ƒãˆã§ã—ãŸã€‚ ぞた、åŊ“時最éĢ˜ãŽīŧˆãã—ãĻ十分ãĒé•ˇã•īŧ‰ãŒãĒかãŖたため、PearlはWeb開į™ēでäēēæ°—ãŽã‚ã‚‹č¨€čĒžã§ã—た。 ã‚‚ãĄã‚ã‚“ã€čĻæ¨Ąã‚’įžåœ¨ãŽįŠļæŗã¨æ¯”čŧƒã™ã‚‹ã“とはできぞせん。

PHPは...ぎようãĢčĻ‹ãˆãžã—た。 あるäēēはすぐãĢこれをやめぞした-åŊŧはč‡Ē分ぎペãƒŧジをäŊœã‚Šã€ã‚˛ã‚šãƒˆãƒ–ック、äŊ•ã‹äģ–ぎもぎ、いくつかぎもぎを持ãŖãĻいぞした。 そしãĻåŊŧはパãƒŧãƒĢぎためãĢあるį¨ŽãŽãƒžã‚¯ãƒ­ãŽã‚ģットを書きぞした。それはåŊŧがとãĻもåŋĢ遊だãŖたからといãŖãĻ、CぎäŊŋい斚をįŸĨãŖãĻいたぎで、CぎようãĢčĻ‹ãˆãžã—た。 そしãĻ、それを個äēēホãƒŧムペãƒŧジとå‘ŧãŗぞした。 「äēē々、į§ãŒæ›¸ã„たもぎをčĻ‹ãĻください。ここãĢあるもぎはすずãĻ、パãƒŧãƒĢぎもぎよりもずãŖと明įĸēで、įˇ¨é›†ã™ã‚‹ã“とができぞす。」 そしãĻäēē々はそれがåĨŊきだãŖた。

それからåŊŧはäē‹äģļを攞æŖ„した。 一čˆŦãĢ、įĩæžœã¨ã—ãĻ、こぎPHPは存įļšã—始め、PerlよりもずãŖとäēē気がありぞした。 しかし、åŊŧぎこぎ「å‡ēį”Ÿæ™‚ぎæ€Ē我」īŧˆãƒ‘ãƒŧãƒĢぎ一é€ŖぎマクロとしãĻぎã‚ĸイデã‚ĸīŧ‰ã¯ã€åŊŧとかãĒã‚ŠæŽ‹é…ˇãĒ冗čĢ‡ã‚’æŧ”じぞした。 言čĒžã¯åĨ‡åĻ™ã§ã‚ることが判明しぞした。 つぞり、į‹Ŧč‡ĒãĢ開į™ēし、čĒ°ã‚‚ãã‚Œã‚’č¨­č¨ˆã›ãšã€čĒ°ã‚‚é–‹į™ēプロã‚ģã‚šã‚’įŽĄį†ã—ぞせんでしたīŧˆäŧšį¤žã‚‚個äēēもãĒしīŧ‰ã€‚多くぎグãƒĢãƒŧプがあり、それぞれがåĨŊきãĒもぎをčĻ‹ãžã—た。 そぎįĩæžœã€ã‚šã‚ŋイãƒĢはありぞせんが、抟čƒŊはį•°ãĒã‚‹æ–šæŗ•ã§å‘ŧãŗå‡ēされぞす。すずãĻが下įˇšã‚’äģ‹ã—ãĻčĄŒã‚ã‚Œã€ä¸€čˆŦãĢ、とãĢã‹ãã€č¨­åŽšã¯ã‚ãĄã“ãĄãĢあり、これがおぎようãĢ抟čƒŊするかは非常ãĢ明įĸēではありぞせん。 しかし、åŊŧã¯ãã†č€ƒãˆãŸãŽã§ã€2時間でåē§ã‚Šã€PHPを書くことができぞす。

PythonとRubyīŧšRubyはäģŠã§ã¯ã‚ぞりäēē気がãĒく、PythonはäŊ•ã‚‰ã‹ãŽåŊĸで「プãƒŦãƒŧãƒŗ化」されãĻいぞす。これãĢついãĻは垌でčĒŦ明しぞす。 åŊ“時、それは非常ãĢ専門įš„ãĒį›Žįš„ぎためぎ非常ãĢ専門įš„ãĒ言čĒžīŧˆčŦ›å¸ĢがPerl、Python、Ruby、PHPを指しãĻいたīŧ‰ã ãŖたことは明らかです。 一čˆŦįš„ãĒã‚ąãƒŧã‚šã§ã¯ã€ã‚ˇã‚šãƒ†ãƒ ãƒ—ãƒ­ã‚°ãƒŠãƒŸãƒŗグもビジネ゚ロジックも、そぎ時į‚šã§čĒ°ã‚‚書いãĻいãĒいぎで、äģŠã§ã¯ãģとんおäŊ•ã‚‚しぞせん。

90åš´äģŖぎã‚ŗãƒŗパイãƒĢ言čĒž


į§ãŸãĄã¯åŒã˜æ™‚é–“ãĢčĄŒããžã™ãŒã€äģ–ぎ斚向ãĢčĄŒããžã™ã€‚ åŊ“時、į§ãŸãĄã¯ã‚Ļェブį”¨ã€ãƒ¯ãƒŧドプロã‚ģãƒƒã‚ˇãƒŗグį”¨ã§ã¯ãĒく、ã‚ĸプãƒĒã‚ąãƒŧã‚ˇãƒ§ãƒŗį”¨ã€ã‚ĒペãƒŦãƒŧテã‚Ŗãƒŗã‚°ã‚ˇã‚šãƒ†ãƒ į”¨ã€ãŠã‚‚ãĄã‚ƒį”¨ãĒお、一čˆŦįš„ãĢはäŊ•ã§ã‚‚書くåŋ…čĻãŒã‚ã‚‹ãģãŧすずãĻãĢC ++をäŊŋį”¨ã—ãĻいぞした。 しかし、C ++は原際ãĢは不気å‘ŗãĒ言čĒžã§ã™ã€‚ ãĒんでīŧŸ įŦŦ一ãĢ、下äŊäē’換性ぎためãĢCぎすずãĻãŽå•éĄŒã‚’įļ™æ‰ŋしたためです。 そこでは、Cぎ場合と同じようãĢ、100万通りぎ斚æŗ•ã§č‡Ē分č‡ĒčēĢをæŽēすことができぞすīŧˆåŊ“į„ļ、C ++ã§æ–°ã—ã„ãƒĄã‚ŊッドがčŋŊ加されぞしたīŧ‰ã€‚ 同時ãĢ、C ++ぎäŊœč€…が意å›ŗしたようãĢ、すずãĻをæ­Ŗしくæ­ŖįĸēãĢ記čŋ°ã™ã‚‹ã¨ã€ã‚‚ãĄã‚ã‚“ã€å¤ã„ã‚ˇã‚šãƒ†ãƒ ãƒĄã‚Ŋッドでåŧˇåˆļįĩ‚äē†ã™ã‚‹ã“とはできãĒくãĒり、小さくãĒãŖたようãĢčĻ‹ãˆãžã™ã€‚ それãĢもかかわらず、åŊŧは非常ãĢåĨ‡åĻ™ãĒį‹Ŧį‰šãŽã‚ĒブジェクトãƒĸデãƒĢを持ãŖãĻいぞした。 プログナムをãƒĸジãƒĨãƒŧãƒĢãĢåˆ†å‰˛ã—ã€Cからぎピãƒŧã‚šãĢåˆ†å‰˛ã—ãžã™īŧˆCぞたはC ++ãĢイãƒŗクãƒĢãƒŧドできる場合-原際ãĢは、ナイブナãƒĒテキ゚トをプログナムãĢæŒŋå…Ĩすることを意å›ŗしãĻいたため、イãƒŗクãƒĢãƒŧドぎ束をäŊœæˆã™ã‚‹ã¨ããĢすずãĻぎもぎがありぞすīŧ‰ -åŊ“初ぎようãĢ「プãƒĒミテã‚Ŗブ」である場合、すずãĻが1ã¤ãŽãƒ•ã‚Ąã‚¤ãƒĢãĢæŒŋå…Ĩã•ã‚Œã€ããŽåžŒæ•°å›žåŽŸčĄŒã•ã‚Œã‚‹ãŸã‚ã€ã‚ŗãƒŗパイãƒĢãĢ非常ãĢé•ˇã„æ™‚é–“ãŒã‹ã‹ã‚Šãžã™ã€‚åŒã˜ãƒ‘ã‚šã‚ĢãƒĢ、Wirtowskiは、こぎį‚šãĢついãĻは、はるかãĢæ€æ…Žæˇąã„ãƒãƒŧジョãƒŗはさらãĢå„ĒれãĻいぞす。

一čˆŦįš„ãĢ、C ++ãĢは多くぎæŦ é™Ĩがありぞす。 C ++で書くãĢはプログナマãƒŧぎčŗ‡æ ŧがéĢ˜ããĒければãĒらず、そぎようãĒプログナマãƒŧはéĢ˜äžĄã§ã—たīŧˆæē–備やäģ–ぎäŊ•ã‹ãŽä¸Ąæ–šã€ã¤ãžã‚Šã€å¸‚場でプログナマãƒŧをčĻ‹ã¤ã‘るぎはé›Ŗしく、多くを支払うåŋ…čĻãŒã‚り、一čˆŦįš„ãĢこれは重čĻã§ã¯ã‚りぞせん... īŧ‰ そしãĻį§ãŸãĄãŽã‚ŗãƒŗピãƒĨãƒŧã‚ŋãƒŧã¯ãŠã‚“ãŠã‚“é€Ÿãč€ƒãˆã‚‰ã‚Œã€ã‚ˆã‚ŠåŽ‰ããĒり、äēē々は新しいã‚ŗãƒŗピãƒĨãƒŧã‚ŋãƒŧをčŗŧå…Ĩし、より多くぎã‚ĸプãƒĒã‚ąãƒŧã‚ˇãƒ§ãƒŗ、é›ģ芹į”¨ãŽãŠã‚‚ãĄã‚ƒã€ãã—ãĻ一čˆŦįš„ãĢはより多くぎ喜ãŗã‚’æą‚ã‚ãĻいぞす。

そこで、JavaīŧˆJavaīŧ‰ãŒį™ģ場しぞした。 åå‰ãŒã“ãŽč¨€čĒžã§į™ģ場したようãĢ、かãĒりéĸį™Ŋã„čŠąãŒãã“ãĢæŽĨįļšã•ã‚ŒãĻいぞす。 そこãĢはプログナマãƒŧがいãĻ、åŊŧらはいつもã‚ŗãƒŧヒãƒŧをéŖ˛ã‚“でいãĻ、åŊ“時はジãƒŖワåŗļã§æˆé•ˇã—ãĻいたã‚ŗãƒŧヒãƒŧをéŖ˛ã‚€ãŽãŒæĩčĄŒã§ã—た。 ã“ãŽč¨€čĒžã¯ã€įĩ„ãŋčžŧãŋ抟器、į‰šãĢã‚ŗãƒŧヒãƒŧãƒĄãƒŧã‚Ģãƒŧį”¨ãŽč¨€čĒžã¨ã—ãĻč€ƒãˆã‚‰ã‚ŒãĻいぞした。 そしãĻ名前が判明しぞした...
一čˆŦįš„ãĢåŊŧåĨŗからäŊ•ãŒå§‹ãžãŖたぎか、äŊ•ãŒåŊŧåĨŗãĢč‰¯ã‹ãŖたぎか、そしãĻãĒぜåŊŧåĨŗは大きãĒäēē気を垗たぎですかīŧŸ 最初ãĢ、åŊŧã‚‰ã¯ã‚ˇã‚ˇãƒĨニãƒŧぎéēį”Ŗを厌全ãĢ取り除きぞした。 ポイãƒŗã‚ŋはありぞせん。äŊ“ãŽä¸€éƒ¨ã‚’æ’ƒãĄã€ã™ãšãĻをåŖŠã™æ–šæŗ•ã¯ã¯ã‚‹ã‹ãĢ少ãĒいです。 įŦŦäēŒãĢ、åŊŧらはã‚ĒブジェクトãƒĸデãƒĢぎčĻŗį‚šã‹ã‚‰ã‚ˆã‚Šæœ€čŋ‘ぎã‚ĸイデã‚ĸを導å…Ĩしぞした-つぞり、C ++はJavaよりもずãŖと旊くį™ģ場し、より古くãĻ「ワイãƒĢドãĒ」ã‚ĒブジェクトãƒĸデãƒĢをäŊŋį”¨ã—ぞした。 さãĻ、ここīŧˆčŦ›å¸ĢはJavaを指しãĻいぞすīŧ‰ã¯ã€ã™ã§ãĢそれよりももãŖã¨æ€æ…Žæˇąãã€į†čĢ–įš„ãĢは、äēē々は原際ãĢはすずãĻをもãŖとクãƒŧãƒĢãĢč€ƒãˆã€åŋœį”¨ã—、äŊœã‚Šãžã—た。

そしãĻ最垌ãĢ、3į•Ēį›Žã€‚ Javaãƒ—ãƒ­ã‚°ãƒŠãƒ ã¯ã€ãƒžã‚ˇãƒŗã‚ŗãƒŧドではãĒく、äģŽæƒŗãƒžã‚ˇãƒŗぎã‚ŗãƒŧドで収集されぞした。 つぞり、JavovskayaというäģŽæƒŗãƒžã‚ˇãƒŗīŧˆVMīŧ‰JVMがありぞした。 あãĒたぎプログナムはあるį¨ŽãŽä¸­é–“襨įžãĢãĒã‚Šã€ã“ãŽãƒžã‚ˇãƒŗぎ劊けを借りãĻすでãĢåŽŸčĄŒã•ã‚ŒãĻいぞした。 それはäŊ•ã‚’与えぞしたかīŧŸ įŦŦ一ãĢ、速åēĻがäŊŽä¸‹ã—、įŦŦäēŒãĢã€ã˛ãŠã„åŠ›ã§č¨˜æ†ļをéŖŸãšãĻいぞした。įŦŦ三ãĢ、īŧˆį†čĢ–įš„ãĢはīŧ‰ãŠã“でもæē帯できぞした-ã‚ŗãƒŧヒãƒŧãƒĄãƒŧã‚Ģãƒŧ、ã‚ŗãƒŧヒãƒŧグナイãƒŗダãƒŧ、ã‚ŗãƒŗピãƒĨãƒŧã‚ŋãƒŧ、æē帯é›ģčŠąãžã§ã§ã™ã€‚ ã“ã‚Œã¯ã€ä¸€æ–šã§ã¯č‰¯ã„ã“ã¨ã§ã™ã€‚ã¤ãžã‚Šã€äģŽæƒŗãƒžã‚ˇãƒŗぎ原čŖ…ã‚’äŊœæˆã—た垌、Javaプログナムをおこでもčĩˇå‹•ã§ããžã™ã€‚ しかし、一斚で、同じæē帯é›ģčŠąã§ãƒĄãƒĸãƒĒが少ãĒく、パフりãƒŧマãƒŗ゚がäŊŽä¸‹ã—、それでもすずãĻが鈍くãĒãŖãĻ速åēĻがäŊŽä¸‹ã—始めたぎはæ‚Ēいことです。

ã—ã‹ã—ã€ã“ã‚Œã¯č¨€čĒžãŒį™ē明されたä¸ģčĻãĒもぎでさえありぞせん。 Java言čĒžã¯ã€ãƒ—ログナマãƒŧぎčŗ‡æ ŧを減らすためãĢč€ƒæĄˆã•ã‚Œãžã—ãŸã€‚ ã¤ãžã‚Šã€č˛§ã—ã„ãƒ—ãƒ­ã‚°ãƒŠãƒžãƒŧはæ‚Ēいプログナムを書くことができãĒã„ãŽã§ã€č‰¯ã„Javaプログナムを書くことができぞす-ãƒ—ãƒ­ã‚°ãƒŠãƒ ã‚’ã˛ãŠãæ›¸ãæ‰‹æŽĩはありぞせん。 ãã“ã§ã¯ã€č‰¯ã„ãƒ—ãƒ­ã‚°ãƒŠãƒ ã ã‘ã‚’æ›¸ãã“ã¨ãŒã§ããžã™ã€‚ ãžã‚ã€č¨€čĒžãŽäŊœæˆč€…ぎį†č§Ŗで。

つぞり、C、C ++、Python、äŊ•ã§ã‚‚、プロジェクトからäŊ•ã‚‰ã‹ãŽã˛ãŠã„ゴミをäŊœã‚‹ã“とができぞす。そこでは、すずãĻがį§ãŸãĄã¨æˇˇåŒã•ã‚Œã€æ•°æ™‚é–“ãĒおãĢãĒりぞす。 そぎ垌、Javaでã‚ŦベãƒŧジダãƒŗプをäŊœæˆã™ã‚‹ã“ともできぞすが、そぎためãĢはすでãĢいくつかぎåŠĒ力をするåŋ…čĻãŒã‚りぞす。 つぞり、デフりãƒĢトでは「ã‚Ŧベãƒŧジ」ではãĒいことがわかりぞす。äŊ•ã‹ã‚’įļ™æ‰ŋしãĻįļ™æ‰ŋするというäģ–ãŽå•éĄŒãŒį™ēį”Ÿã—ぞす。一čˆŦãĢ、意å‘ŗぎある1行ãĢつき、あぞり意å‘ŗぎãĒい10čĄŒãŒå–åž—ã•ã‚Œãžã™ã€‚ しかし、そぎようãĒ中į´šãƒŦベãƒĢぎプログナマãƒŧは、非常ãĢéĢ˜å“čŗĒぎã‚ŗãƒŧドを書くことができぞす。
もうすぐįĩ‚わりです。 į§ãŸãĄãĢとãŖãĻ、æŦĄãĢį™ģ場するぎは.Netīŧˆãã†ã§ã¯ãĒいīŧ‰ã§ã™ã€‚į‰šãĢ、CīŧƒãĢé–ĸåŋƒãŒã‚りぞすīŧˆãģãŧ同じこと[čŦ›å¸ĢはJavaを指しãĻいぞす]。つぞり、čŠŗį´°ãĢ違いがありぞす。åŊŧらはより多くぎお金を払うīŧ‰ã€‚

そしãĻもう1つ-JavaScript。 同じ嚴ãĢį™ģ場したJava言čĒžã¨ã¯äŊ•ãŽé–ĸäŋ‚ã‚‚ã‚ã‚Šãžã›ã‚“ã€‚ã“ãŽč¨€č‘‰ã¯æĩčĄŒã—ãĻいぞした。åŊŧらはäŊŋį”¨ã™ã‚‹å•†æ¨™ã‚’ナイã‚ģãƒŗ゚しぞした。

あãĒたがæŗ¨æ„ã‚’払うåŋ…čĻãŒã‚ã‚‹ä¸ģãĒもぎはäŊ•ã§ã™ã‹īŧŸ īŧˆčŦ›å¸Ģは、C ++からJava、.Net、Cīŧƒã€JavaScript、およãŗPHPãĢįŸĸ印を描į”ģしぞすīŧ‰ã€‚ ã“ã‚Œã‚‰ãŽč¨€čĒžãŽ1つ、およãŗäģ–ãŽå¤šããŽč¨€čĒžã§į°Ąå˜ãĒ小さãĒプログナムをäŊœæˆã™ã‚‹ãĢは-C ++をįŸĨãŖãĻいれば、一čˆŦãĢäģ–ãĢäŊ•ã‚‚įŸĨるåŋ…čĻã¯ã‚りぞせん-C ++でäŊœæˆã—、最初ãĢドãƒĢをčŋŊ加しぞす。ささいãĒことをしãĻ、それはあãĒたぎためãĢäŊ•ã§ã‚‚働き始めぞすīŧˆčŦ›å¸Ģは、C ++からぎįŸĸå°ãŒå‰˛ã‚ŠåŊ“ãĻã‚‰ã‚ŒãŸč¨€čĒžã‚’あãĒたãĢį¤ēしぞすīŧ‰ã€‚ つぞり、いくつかぎ単į´”ãĒį‚šã§éžå¸¸ãĢäŧŧãĻいぞす。 å­Ļæ ĄãŽå•éĄŒã€æ•™č‚˛čĒ˛éĄŒã€äŊ•ã‹äģ–ぎもぎをč§Ŗæąēする場合īŧˆå¤§ããĒãƒ—ãƒ­ã‚¸ã‚§ã‚¯ãƒˆã‚’č¨­č¨ˆã—ãĒいでください-数字をčĒ­ãŋ取り、ã‚ŗãƒŗã‚ŊãƒŧãƒĢãĢæ•°å­—ã‚’čĄ¨į¤ēし、äŊ•ã‹äģ–ぎことをする1ã¤ãŽãƒ•ã‚Ąã‚¤ãƒĢがありぞすīŧ‰ã€ã“れらぎ間ãĢãģã¨ã‚“ãŠé•ã„ã¯ã‚ã‚Šãžã›ã‚“čˆŒã€‚ JavaScriptとPHPがį‰šæŽŠåŒ–されãĻいることは明らかです。これらはすずãĻが少しį•°ãĒりぞす。 そしãĻ、ここでīŧˆčŦ›å¸ĢはJavaとCīŧƒã‚’指しãĻいぞすīŧ‰ä¸€čˆŦįš„ãĢはãģとんお違いはありぞせん。

それäģĨæĨ、あらゆるį¨ŽéĄžãŽčˆˆå‘ŗæˇąã„ã‚‚ãŽãŒį™ģ場しぞしたが、それらが成功するかæ­ģãŦかは明らかではありぞせん。 äģŠã€äŊ•ãŽã‚ŋ゚クãĢäŊŋį”¨ã—ãĻいぞすかīŧŸ

ã‚ŋ゚クãĢåŋœã˜ãŸč¨€čĒžãŽé¸æŠž


ビデã‚Ēã‚ĢãƒŧドぎドナイバãƒŧをäŊœæˆã™ã‚‹ã‚ŋ゚クãĢį›´éĸしãĻいるとしぞす。 äģŠæ—Ĩã¯ãŠãŽč¨€čĒžã‚’äŊŋį”¨ã—ぞすかīŧŸ īŧˆč´čĄ†ã‹ã‚‰ãŽåĢãŗīŧšJavaīŧīŧ‰ãĒぜ... Javaはį´ æ™´ã‚‰ã—いぎãĢ、RubyやPHPではãĒいぎかīŧŸ īŧˆčŦ›å¸ĢはįšŽč‚‰ã‚’čŠąã—ãžã™ã€‚īŧ‰

äŊŽãƒŦベãƒĢプログナミãƒŗグ


äŊŽãƒŦベãƒĢぎäŊ•ã‹ã‚’書く場合、CãŒæœ€č‰¯ãŽé¸æŠžã§ã™ãŒã€åŽŸéš›ãĢはC ++がこれãĢäŊŋį”¨ã•ã‚ŒãĻã„ã‚‹ã“ã¨ã‚’čžããžã—ãŸīŧˆã—かしčĻ‹ãžã›ã‚“でしたīŧ‰ã€‚ しかし、į§ã¯ã“れをåŧąãäŋĄã˜ãĻいぞす。CではあãĒたが明įĸēãĢåˆļåžĄã§ãã‚‹ã‹ã‚‰ã§ã™-あãĒたが非常ãĢå¤šããŽãƒã‚¤ãƒˆãŽãƒĄãƒĸãƒĒを与えたぎで、それから非常ãĢå¤šããŒãƒĄãƒĸãƒĒãĢãĒりぞす。 C ++īŧˆSTLīŧ‰ã§ã¯ã€æ–‡å­—列はおぎようãĢ原čŖ…されぞすかīŧŸ ぞあ、おういうわけか原čŖ…。 そしãĻ、最įĩ‚įš„ãĢは、おぎようãĢ、そしãĻäŊ•ãŒãã“でčĩˇã“るかわかりぞせん。おそらく、ビデã‚Ēã‚Ģãƒŧãƒ‰ãŽč¨˜æ†ļがįĩ‚わるか、äŊ•ã‹äģ–ぎことがčĩˇã“るでしょう。 したがãŖãĻ、Cはぞだ存在し、æ­ģãĒず、そぎようãĒã‚ˇã‚šãƒ†ãƒ ãƒ—ãƒ­ã‚°ãƒŠãƒŸãƒŗグã‚ŋ゚クはぞだ存在しぞす-ã‚ĒペãƒŦãƒŧテã‚Ŗãƒŗã‚°ã‚ˇã‚šãƒ†ãƒ ã‚’č¨˜čŋ°ã—、ドナイバãƒŧã‚’č¨˜čŋ°ã—、äģ–ぎäŊ•ã‹ã‚’č¨˜čŋ°ã™ã‚‹ãŸã‚ãĢ-CはこれãĢ最遊です。 さらãĢ、äģŠã§ã¯ãƒãƒƒãƒ†ãƒĒãƒŧでį”Ÿæ´ģするあらゆるį¨ŽéĄžãŽãƒ‡ãƒã‚¤ã‚šīŧˆãƒĸノぎイãƒŗã‚ŋãƒŧネットがæĨることをį´„束しぞすīŧ‰ãŒã‚りぞすīŧˆãã—ãĻã‚‚ãĄã‚ã‚“ã€äŊ•į™žä¸‡ã‚‚ぎデバイ゚があり、すずãĻがこぎãƒĸノぎイãƒŗã‚ŋãƒŧネットでハãƒŗグã‚ĸップしぞすīŧ‰ã€ãã‚Œã‚‰ã¯éžå¸¸ãĢ厉く、非常ãĢ少ãĒいé›ģ力でãĒければãĒりぞせんæļˆč˛ģする。 したがãŖãĻ、2 KBãŽãƒĄãƒĸãƒĒ、5 kHzぎプロã‚ģッã‚ĩãŒã‚ã‚Šãžã™ã€‚ã‚‚ãĄã‚ã‚“ã€čŋ‘い将æĨ、あるį¨ŽãŽäģŽæƒŗãƒžã‚ˇãƒŗぞたぱクãƒĒãƒ—ãƒˆč¨€čĒžãŽã­ã˜čžŧãŋは抟čƒŊしぞせん。つぞり、CでäŊ•ã‹ã‚’č¨˜čŋ°ã™ã‚‹åŋ…čĻãŒã‚りぞす。 そしãĻäģŠã€ãŸã¨ãˆã°ã€ãƒ“デã‚Ēã‚ĢãƒŧドīŧˆOpenCLぞたはäģ–ぎテクノロジãƒŧīŧ‰ã§ãŽã‚ŗãƒŗピãƒĨãƒŧテã‚Ŗãƒŗグ-åŊŧらはåŊŧらぎためãĢãƒ—ãƒ­ã‚°ãƒŠãƒ ã‚’æ›¸ããŸã‚ãŽæ–°ã—ã„č¨€čĒžã‚’思いつきぞせん-åŊŧらはいくつかぎ大きãĒåˆļ限でCをしぞす。 äŊ•ã‹æ–°ã—いことをå­Ļãļį†į”ąã‚’äēē々がすでãĢįŸĨãŖãĻいるからといãŖãĻīŧŸ æ­ŖåŧãĢは、これはおそらく、ある意å‘ŗでCです。

Webプログナミãƒŗグ


新しいFacebookīŧˆã‚Ŋãƒŧã‚ˇãƒŖãƒĢネットワãƒŧクīŧ‰ã‚’äŊœæˆã™ã‚‹ã¨ã—ぞす。 äŊ•ãĢ書きぞすかīŧŸ īŧˆč´čĄ†ã‹ã‚‰ã¯HTMLとCSSãĢついãĻčŠąã—ãĻいる。īŧ‰HTML、CSSはデã‚ļイãƒŗであり、そこãĢ写įœŸã‚’čŋŊ加したり、友達を掋したり、ã‚ŗãƒĄãƒŗトを掋したりできるようãĢしたい。

゚クãƒĒプトぎ部分、つぞりクナイã‚ĸãƒŗト側でäŊ•ãŒčĩˇã“るかãĢついãĻは、これがJavaScriptです。 ぞた、JavaScriptがåˆĨãŽč¨€čĒžã§į”Ÿæˆã•ã‚ŒãĻ送äŋĄã•ã‚Œã‚‹ã“ともありぞすīŧˆã‚šã‚¯ãƒĒプトがį”Ÿæˆã•ã‚Œã‚‹ã“とがありぞす...ロジックぎ変更をå‡Ļį†ã™ã‚‹æ–šãŒį°Ąå˜ãĒ場合があるためですīŧ‰ã€‚

銚くずきことãĢ、それはPHPで書かれãĻいぞす-そしãĻ、Facebook、およãŗäģ–ぎ多くぎ大čĻæ¨ĄãĒプロジェクト。 ã‚‚ãĄã‚ã‚“ã€ã€Œã‚ŋã‚¤ãƒ—ãƒŸã‚šã€ãŒčĄŒã‚ã‚ŒãŸãŸã‚ã§ã¯ãĒく、æ­Ŗ常ãĢ抟čƒŊするようãĢč‡Ē分でäŊœæˆã™ã‚‹åŋ…čĻãŒã‚りぞしたが、åŊŧã‚‰ã¯ãã‚Œã‚’čĄŒã„ãžã—ãŸã€‚ 原則としãĻ、あãĒたが書くことはだいたい少ãĒくãĒりぞすが、Perlはお勧めしぞせん。 ã‚‚ãĄã‚ã‚“ã“ã“ã§ã¯ã€čĒ°ã‚‚ã‚ĻェブぎためãĢã‚ŧロからäŊ•ã‹ã‚’書くことはありぞせん。 čĒ°ã‚‚がäŊ•ã‚‰ã‹ãŽãƒ•ãƒŦãƒŧムワãƒŧクãĒおを書いãĻいぞす。 ã‚Ēãƒŗナイãƒŗ゚トã‚ĸīŧŸ ã‚Ēãƒŗナイãƒŗ゚トã‚ĸぎフãƒŦãƒŧムワãƒŧクをダã‚Ļãƒŗロãƒŧドしぞした-それだけで、ã‚Ēãƒŗナイãƒŗ゚トã‚ĸをäŊœæˆã—ぞした。

ビジネ゚プログナミãƒŗグ


æŦĄãĢã€éŠ€čĄŒãŽé€€åąˆãĒã‚ĸプãƒĒã‚ąãƒŧã‚ˇãƒ§ãƒŗをäŊœæˆã—ぞす。 ぞたは、たとえば、SIMã‚Ģãƒŧãƒ‰ã‚’č˛ŠåŖ˛ã—ãĻいるäēēはいぞすかīŧŸ おそらくあãĒたはé›ģ芹ãĒãŠã‚’č˛ˇãŖたことがあり、åŊŧらはあãĒたãĢ言ãŖたīŧšã€Œã“こãĢã‚ˇã‚šãƒ†ãƒ ãŒãļら下がãŖãĻいる、į§ãŸãĄã¯äŊ•ã‚‚できãĒい」。 そぎようãĒã‚ĸプãƒĒã‚ąãƒŧã‚ˇãƒ§ãƒŗをäŊ•ãĢ書きぞすかīŧŸ īŧˆPythonãĢついãĻãŽč´čĄ†ã‹ã‚‰ãŽåĢãŗīŧ‰ã“れをPythonで書くことはできぞせんかīŧŸīŧ Pythonã§æ›¸ãäžĄå€¤ã¯ã‚ã‚Šãžã›ã‚“ã€‚ ãĒんでīŧŸ PythonでäŊ•ã‹ã‚’書くとき、あãĒたぎ書くプロã‚ģ゚で大量ぎバグを検å‡ēすることは不可čƒŊだからです。 Pythonはあらゆる斚æŗ•ã§å‹•įš„ãĢ型äģ˜ã‘されぞす。一čˆŦįš„ãĢ、バグを隠すことで、これらぎ刊き手ぎãƒĻãƒŧã‚ļãƒŧがそこでäŊ•ã‚’したかį†č§Ŗできず、すずãĻがåŖŠã‚ŒãŸã‚ˆã†ãĒįŠļæŗã§ãƒãƒƒãƒ—ã‚ĸップすることができぞす。 つぞり、Pythonでは小さãĒ゚クãƒĒプトをäŊœæˆã™ã‚‹æ–šãŒč‰¯ã„です。そこでäŊ•ãŒčĩˇã“ãŖãĻいるぎか、äŊ•ãŒčĄŒã‚ã‚ŒãĻいるぎかをį†č§Ŗできぞす。 ぞあ、ぞたは捨ãĻるぎが掋åŋĩではãĒいäŊ•ã‹īŧšįĢļ合äģ–į¤žãŽå‰ãĢäŊ•ã‹ã‚’åą•é–‹ã—ãŸã„ãŽã§ã€ãã‚Œã¯ã—ã°ã‚‰ãã™ã‚‹ã¨åŖŠã‚Œãžã™ã€‚ Pythonで書いたぎはそれだけです-市場をį˛åž—しぞした。 ãžãŸã€ãŸã¨ãˆã°ã€éŠ€čĄŒãŽã‚ĸプãƒĒã‚ąãƒŧã‚ˇãƒ§ãƒŗīŧˆãƒ­ãƒŧãƒŗをæ‰ŋčĒã™ã‚‹ãĒおīŧ‰ãŽã‚ˆã†ãĢé•ˇã„é–“äŊ•ã‹ã‚’書く場合は、Javaã§č¨˜čŋ°ã—ぞす。 ãã‚Œã¯æˇąåˆģãĒå•éĄŒã§ã‚ã‚‹ãŸã‚ã€į´™ã€ãŠé‡‘ã€æ›¸éĄžã€ããŽäģ–ぎもぎですが、すずãĻをåŖŠã™ã‚ˆã†ãĢæĩĒč˛ģすることは不可čƒŊです、そうでãĒければäēē々は気分をåŽŗしぞす-あãĒたがäŊ•ã‚‰ã‹ãŽį¨ŽéĄžã‚’持ãŖãĻいるぎで、åŊŧらぎお金がãĒくãĒãŖãĻ、おこãĢã‚‚čĄŒã‹ãĒい文字列が数字ãĢãĒãŖたįžŦ間、ぞたはそぎ逆。 そぎため、Javaでįŗģįĩąįš„ãĢ、あãĒたは取りčžŧんで、書いãĻ、書いãĻ...さãĻ、ぞたは.Netで、そぎようãĒįŠļæŗã¯åŽŸå‰‡ã¨ã—ãĻčĩˇã“りぞす。 ã‚‚ãĄã‚ã‚“ã€ãã“ã§å•éĄŒãĢ遭遇することもありぞすが、それでもこぎ可čƒŊ性はいくãļんäŊŽããĒりぞす。

čģéšŠã€čˆĒįŠē厇厙向けぎプログナミãƒŗグ


äģŠã€åŊŧã‚‰ãŒãƒ­ã‚ąãƒƒãƒˆã§æœˆãĢあãĒたを送ることãĢæąēめたとæƒŗ像しãĻください。 ãƒ­ã‚ąãƒƒãƒˆã‚¨ãƒŗジãƒŗをåˆļåžĄã™ã‚‹ã‚ŗãƒŧドを書きたいと思うもぎはäŊ•ã§ã™ã‹īŧŸ čĻ‹ãĻãŋぞしょう。 , ( Perl, Python, PHP, Ruby), — , - , . C++? , , , C++ . - , .

Java? , , . , , Java . , , : ÂĢ, garbage Âģ. , .

, , . , , , - , .


. - , - , — , - — . , - -, , ( , , - ) - , . , . , - , Java, . ( ), , -, - , , (JavaScript). .

- , , ? ( ), , - . — , : ÂĢ! !Âģ . , , (, ). ! , , , -, Java, : ÂĢ, , ,Âģ — 10 . .

-


, , . , Appl, Borland , — Oberon. — , (? ? !). - , , .

. , . Ada, , , - , — .

? Python, , . PHP, , ( ). ( Ada) , . こぎį†į”ąã¯äŊ•ã§ã™ã‹īŧŸ , . , , , ( Stack Overflow) , , , , . , , , . , ? â€Ļ - , , - , . - , , . , . , . - , (Python) .

Java Java Native Interface. , (-, , ) ( ). . , , ? , . , - . , () - . - .


, , . ? - , ? , , -, - . , , — .

, , , , , , ( , ), — Java, .Net. - , , , Java-, .Net- â€Ļ

- , -, -, -, C++ . , , ( Perl, Python, PHP, Ruby), . — PHP , Python, , . , .

Ruby, . , PHP, , , .

, , — . , , , , , , - , - (, , ). Excel' -. , , . - Machine Learning, - , , . , , . , , , Machine Learning , , - , , , . ( ) ( ), .

, — . , . , ? だから。 . , , ( ) . , , .

. , , , , , . , , , , - - .

( )? , — . . , C++ ( ), ( ). — , C++, ( ) , , Java. , .

? , , , ? ( , 2000 , , C++, 2015 ).

2000 C++ . 15 , , , . , . - , , Borland Pascal', . C++ - (STL) — , sort() . , , — . - set () — , C++ , . , , , -. , , .

Java , Java . , , . - , . .

? ( ) . . , -, () C++, , .

, - () , , .

, , , , . — ( , ) ++ ( , , ). , , , : ÂĢ, , - ? Âģ. , , , . , ( ) .

, . , C++. , . , ( ). C++ , C++ .

ÂĢÂģ . . , - , . , , — , . — . , : â€Ļ : ÂĢ, - , -. - , - — , . - , : ÂĢ, , Âģ — . , ? — . , : , , - () -, - , - , - , - , , . - , . ( ) C++, -. , ( ÂĢÂģ) , , - .
, — , “ ”. ( ) , , . — , : - , rsync (, . , , rsync', ).

, . , , , , -. , , ( 2 ) . - , . , .

, , , ( , , ), - , , - , -. , ( C++ ) , ( , ) — , -, , -. - . , , ÂĢ Âģ — ÂĢ — Âģ; — C++ , C++ , .

( ) — , , ( , ). . . , .

プログナマがäģ•äē‹ã‚’æŽĸす斚æŗ•


あãĒãŸã¯ã“ã‚Œã‚’čĄŒã„ãžã—ãŸīŧˆ čŦ›å¸Ģはã‚ŗãƒŧ゚ぎãƒĒã‚šãƒˆã‚’čĄ¨į¤ēしぞす īŧ‰ã€å¤§å­Ļでå­ĻんだことをすずãĻčĄŒã„ã€į”Ÿį”Ŗ性をéĢ˜ã‚ã‚‹ãŸã‚ãĢさらãĢ2åš´ã‚’č˛ģやしぞした。 äģ•äē‹ãŽãŸã‚ãĢäŊ•ã‹ã‚’選ãļãĢはīŧŸ 最初ãĢ、あãĒたはすずãĻãĢäŧšã„ã€ãŠã“ã‹æˇąãčĄŒãã€ã‚ãĒたが愛しãĻいることをすでãĢįŸĨãŖãĻいぞす。 あãĒたが愛するもぎをč‡Ēį„ļãĢ選択しãĒければãĒりぞせん。 あãĒたが愛するãĒら、あãĒたは投čŗ‡ã™ã‚‹ã§ã—ょう、あãĒたはãƒĸチベãƒŧã‚ˇãƒ§ãƒŗã‚’æŒãĄã€ä¸€čˆŦįš„ãĢすずãĻがうぞくいくからです。 それはお金だけではãĒã„ãŽã§ã€å•éĄŒã¯ã‚ãĒãŸãŒčˆˆå‘ŗを持ãŖãĻæĨŊしいはずであることです。 さãĻ、あãĒたはクãƒŧãƒĢãĒäŧšį¤žãĢå°ąčˇã—ãŸã„ãŽã§ã™ã€‚ 個äēēįš„ãĢおぎようãĒäēēãĢäŧšã„たいですかīŧŸ たとえば、100äēēぎå­Ļį”ŸãŒį§ãŽã¨ã“ろãĢæĨぞす-į§ã¯2äēēぞたは1äēēでäģ•äē‹ã‚’しãĒければãĒりぞせん。 åŊŧらはäŊ•ãĢæĨãĻいるぎでしょうかīŧŸ æœ€č‰¯ãŽå ´åˆã€åŊŧらは大å­Ļで受け取ãŖた卒æĨ­č¨ŧ書をčĻ‹ã›ãĻくれぞす。 クãƒŧãƒĢãĒ卒æĨ­č¨ŧ書ですが、それãģおクãƒŧãƒĢではありぞせんīŧã€ã¨į§ã¯é–“違ãŖãĻいる可čƒŊ性がありぞす。 たãļん、あるäēēは多くぎč‡Ēį”ąæ™‚間を持ãŖãĻいãĻ、åŊŧはずãŖã¨č‰¯ãå­Ļんだ。

äŊ•ãŒį´ æ™´ã‚‰ã—いでしょうかīŧŸ ぞず、最初から最垌ぞで書いたã‚Ēãƒŧプãƒŗã‚Ŋãƒŧ゚プロジェクト。 デãƒŧã‚ŋをすばやくčĒ­ãŋ取ることができるようãĢäŊ•ã‚‰ã‹ãŽã‚¤ãƒŗフナ゚トナクチãƒŖをäŊœæˆã™ã‚‹ã“ã¨ã‚’ãŠå‹§ã‚ã—ãžã™ã€‚ãã‚Œã‹ã‚‰ã€ã‚‚ãĄã‚ã‚“ã€äŊ•ã‹ã‚Ēãƒŧプãƒŗã‚Ŋãƒŧã‚šã‚’äŊœæˆã™ã‚‹ã“とãĢ興å‘ŗがありぞす。 åŊŧらはã‚Ļェブã‚ĩイトではãĒく、トピックãĢé–ĸすることをしぞした。 ãĒぜこれãĢ興å‘ŗがありぞすかīŧŸ į§ã¯ã‚ãĒたぎã‚ŗãƒŧドをčĻ‹ã‚‹ã“とができぞす、あãĒたがã‚ŗミットするé ģåēĻをčĻ‹ã‚‹ã“とができぞす、į§ã¯ãƒĻãƒŧã‚ļãƒŧからぎバグ、それをäŊŋį”¨ã™ã‚‹é–‹į™ēč€…ã‹ã‚‰ãŽãƒã‚°ãĢおぎようãĢ反åŋœã—たかをčĻ‹ã‚‹ã“とができぞす-į§ã¯ã™ãšãĻを書きį•™ã‚ãĻ、į§ã¯ã™ãšãĻをčĻ‹ãĻã€č€ƒãˆãžã™īŧšã€Œã‚あ、2嚴間バグがありぞした閉じた垌、あãĒãŸã¯å¤ąį¤ŧãŽã†ãĄãĢãƒĻãƒŧã‚ļãƒŧãĢį­”えぞした、äŊ•ã‹äģ–ぎもぎがありぞす-į§ã¯ãã‚Œã‚’受けå…Ĩれぞせん。」 つぞり、これはあãĒたぎ個äēēįš„ãĒプロジェクトです。

さらãĢ、äģ–ãĢクãƒŧãƒĢãĒもぎはäŊ•ã§ã™ã‹īŧŸ チãƒŧムワãƒŧクをおぎようãĢ行ãŖたかčĻ‹ãĻãŋたいです。 つぞり、あãĒたはイãƒŗã‚ŋビãƒĨãƒŧぎためãĢį§ãŽã¨ã“ろãĢæĨãĻã€ã“ã†č¨€ã„ãžã™ã€‚ã€Œį§ãŸãĄã¨å¤§å­ĻぎäēēãŸãĄã¯č‰¯ã„ã‚ĸプãƒĒã‚ąãƒŧã‚ˇãƒ§ãƒŗを書いた。 į§ã¯ãã“でデãƒŧã‚ŋベãƒŧã‚šã‚’äŊœæˆã—、åŊŧらはそこãĢäŊ•ã‚‰ã‹ãŽãƒĸバイãƒĢã‚ĸプãƒĒã‚ąãƒŧã‚ˇãƒ§ãƒŗをäŊœæˆã—ぞした。そしãĻ、åŊŧはį§ãŸãĄãŽãŸã‚ãĢデã‚ļイナãƒŧぎåĨŗãŽå­ã€æŠ€čĄ“ã‚ĩポãƒŧトぎį”ˇãŽå­ã¨ã—ãĻ働いãĻいぞした。 į§ãŸãĄã¯5äēēいぞしたが、クãƒŧãƒĢãĒãƒ—ãƒ­ã‚¸ã‚§ã‚¯ãƒˆã‚’čĄŒã„ãžã—ãŸã€‚ã€ さãĻ、あãĒたぎプロジェクトはæœŦåŊ“ãĢ「あãĒたぎもぎはäŊ•ã§ã™ã‹īŧŸã€ã¨č¨€ãŖãĻいぞす。ã‚ŗãƒŧドをもう一åēĻčĻ‹ãĻ、チãƒŧムとチãƒŧムでäģ•äē‹ã‚’する斚æŗ•ã‚’įŸĨãŖãĻいることをį†č§ŖしãĻいぞす。

プログナマãƒŧは、ã‚ŦãƒŦãƒŧジãĢ一äēēでåē§ãŖãĻいるäēēīŧˆã‚¤ãƒŗデã‚Ŗãƒŧã‚ēãĒおīŧ‰ã§ã¯ãĒく、明かりぎãĒい場所で、čĒ°ã¨ã‚‚čŠąã‚’ã›ãšã€ã˛ã’ã‚’į”Ÿã‚„しãĻ書いãĻいぞす。 とãĢかく、äēē々とäŊ•ã‚‰ã‹ãŽäē¤æĩãŒã‚りぞす。 たとえば、時々あãĒたを時々čĒ“う上司と一įˇ’ãĢīŧˆä¸Šå¸ã€åŊŧらはそうであり、いつもčĻĒ切ではありぞせんīŧ‰ã€‚ そしãĻ、į§ã¯ã‚ãĒたがäēē々と一įˇ’ãĢ働くことができると思いぞす、そしãĻあãĒãŸãŒč‰¯ã„ãƒãƒŧムを持ãŖãĻいるãĒらそれはį§ã‚’嚸せãĢしぞす。 č‰¯ããĒくãĻも、åŊŧåĨŗぎ不在よりはぞしです。

個äēēįš„ãĢäģ–ãĢäŊ•ãŒåĨŊきですかīŧŸ 大čĻæ¨ĄãĒプロジェクトでč‡Ē分をčĻ‹ã›ãŸå ´åˆã€‚ ãŸã¨ãˆã°ã€ã‚ˇã‚šãƒ†ãƒ ãƒ—ãƒ­ã‚°ãƒŠãƒŸãƒŗグãĢæēわãŖãĻいる場合、åŊŧらはLinuxã‚ĢãƒŧネãƒĢãĢäŊ•ã‹ã‚’ã‚ŗミットし、äŊ•ã‚‰ã‹ãŽãƒã‚°ã‚’äŋŽæ­Ŗしぞした。 つぞり、åŊŧらはあãĒたがäģ–ぎčĒ°ã‹ãŽã‚ŗãƒŧドをčĒ­ã‚€ã“とができ、それãĢäŊ•ã‚‰ã‹ãŽå¤‰æ›´ã‚’加えることができることをį¤ēしぞした。 「ああ、æœŦåŊ“ãĢ複雑ãĒもぎをčĻ‹ã¤ã‘ãĻ、いくつかぎバグをäŋŽæ­Ŗしぞしたīŧã€ãã—ãĻ、į§ã¯ã“ã‚ŒãĢとãĻもæē€čļŗし始めぞした。 į§ã¯...よくわかりぞせん...įĢļ合äģ–į¤žãŒåŊŧãĢもãŖとįĩĻ料を提䞛しãĻくれたぎでį§ãŽãƒ—ログナマãƒŧã¯čžžã‚ãžã—ãŸã€ãã—ãĻį§ã¯ã‚ãĒたぎäģŖわりãĢčĒ°ã‹ã‚’åˇŽã—čžŧむåŋ…čĻãŒã‚りぞす。 ã‚ŧロから書いたようãĢčĻ‹ãˆãžã™ãŒã€äģ–ぎäēēぎã‚ŗãƒŧドをčĒ­ã‚“だりįˇ¨é›†ã—たりすることができず、į§ã¯æ€’ãŖãĻいぞす。

最垌ãĢ、į‰šåŽšãŽäŊįŊŽãĢåŋœã˜ãĻ、äģ–ãĢもさぞざぞãĒもぎがありぞす。 ã‚ĸナãƒĒ゚トとしãĻ働いãĻいる場合、Kaggleでデãƒŧã‚ŋ分析ã‚ŋ゚クをč§ŖæąēしãĻください。 ã‚ĸãƒĢゴãƒĒã‚ēムįš„ãĒもぎをæŽĸしãĻいる場合は、゚ポãƒŧツプログナミãƒŗグでã‚ĸãƒĢゴãƒĒã‚ēãƒ ã‚’åŽŸčĄŒã—ãĻください。 そしãĻ最垌ãĢ、あãĒãŸãŒčˇæĨ­ãĢついãĻč€ƒãˆã€ã‚¤ãƒŗã‚ŋビãƒĨãƒŧがおうãĒるかをčĒ­ã‚“だら、そこãĢいるäēē々が大きãĒ不æē€ã‚’čĄ¨æ˜Žã—ãĻいることãĢå‡ēäŧšã„ぞした。 į§ã¯ãƒ•ã‚¯ãƒ­ã‚ĻぎようãĢåē§ãŖãĻį­”えぞせん。į§ã¯čļŖå‘ŗを持ãŖãĻいãĒいからです」と、åŊŧらはHRがそうしãĻã„ã‚‹ã¨č€ƒãˆãĻいぞす。 原際、åŊŧらはあãĒたがおれだけ友åĨŊįš„で遊切かをį†č§ŖしようとしãĻいぞす。 あãĒたが非友åĨŊįš„で不十分ãĒ場合、あãĒたがおんãĒ夊才やäģ•äē‹ä¸­æ¯’であãŖãĻも、į´ æ™´ã‚‰ã—いįŸĨč­˜ã‚’æŒã¤ã‚¯ãƒŧãƒĢãĒ専門åŽļであãŖãĻも、チãƒŧムがあãĒたと一įˇ’ãĢ働くことはé›ŖしくãĒり、あãĒたはプロジェクトを単į‹Ŧでåŧ•ãå‡ēすことはありぞせん。 さらãĢ、たとえそれをåŧ•ãå‡ēしたとしãĻも、そぎäŧšį¤žãĢとãŖãĻãŽč˛ čˇã‚’æƒŗ像することができぞす。 明æ—ĨはäŊ•ã‚’しãĻ、「į§ãŽįĩĻ料を10倍ãĢåĸ—やしぞしょう。さもãĒければ、あãĒたをįŊŽãåŽģりãĢã—ãžã™ã€‚ã€ã¨č¨€ã„ãžã™ã€‚ ã‚‚ãĄã‚ã‚“ã€äŧæĨ­ã¯ããŽã‚ˆã†ãĒįŠļæŗãĢはãĒりたくありぞせん。 したがãŖãĻ、č‡Ē分č‡ĒčēĢでぎåĻĨåŊ“性とčĻĒå–„ãŽæ•™č‚˛ã¯ã€īŧˆå°‘ãĒくともīŧ‰å°‚é–€įš„ãĒã‚šã‚­ãƒĢぎ開į™ēと同じくらい重čĻã§ã™ã€‚

čĻį´„すると、į§ã¯äŊ•ã¨č¨€ãˆãžã™ã‹īŧŸ ãŠãŽč¨€čĒžãŒč‰¯ã„ですか、おれがæ‚ĒいですかīŧŸ さãĻ、Ruby、Python、PHPãĒおぎį‰šåŽšãŽč¨€čĒžã‚°ãƒĢãƒŧプ内では、äŊ•ã‚’選択すればよいですかīŧŸ ã‚‚ãĄã‚ã‚“ã€æ­Ŗしいį­”えはPythonですが、原際ãĢã¯ã€č¨ąåŽšã•ã‚Œã‚‹ãƒã‚°ãŽæ•°ã¨äģ–ぎäŊ•ã‹ãŽé‡ãŽé•ã„-5īŧ…、ぞあ、おそらく10īŧ…です。 つぞり、厌成したPHPプロジェクトをæ—ĸãĢäŊœæˆã—ãĻいる場合、åŊŧらぎæ­Ŗã—ã„č€ƒãˆãŽčĒ°ã‚‚「PythonですずãĻを書きį›´ãã†ã€ã¨ã¯č¨€ã‚ãĒいでしょう。 åŊŧã‚‰ã¯č¨€ã†īŧšã€Œã‚‚ãŖとPHP開į™ēč€…ã‚’é›‡ãŖãĻ、PHPでさらãĢ書きぞしょう。」 į´ æ™´ã‚‰ã—ã„ã€ãã‚Œã¯č‰¯ã„é¸æŠžã§ã™ã€‚ ã‚‚ãĄã‚ã‚“ã€įĒį„ļäŊ•ã‚‰ã‹ãŽį¨ŽéĄžãŽãƒ—ロジェクトを書き始めたら、おそらくäģŠPythonを選択するぎがčŗĸ明でしょう。 しかし、それも䞝存しぞす。 市場ãĢã¯åŽ‰äžĄãĒPHP開į™ēč€…ãŒãŸãã•ã‚“ã„ãĻ、Pythonぎ開į™ēč€…ã¯éĢ˜äžĄã ã¨æ€ã†ã‹ã‚‚しれぞせん。「はい、テクノロジãƒŧはもãŖとæĨŊしいですが、æ—ĸčŖŊぎ開į™ēč€…ãŽãŠé‡‘ã‚’į¯€į´„しぞす。」 それでįĩæ§‹ã§ã™
JavaとC ++ぎ選択斚æŗ• はい、同じことがčĩˇã“ãŖãĻいぞす。 新しい大čĻæ¨ĄãĒãƒ—ãƒ­ã‚¸ã‚§ã‚¯ãƒˆã‚’é–‹å§‹ã™ã‚‹č¨€čĒžã‚’æąē厚するぞでãĢ、専門分野ぎįŸĨč­˜ã‚’åž—ãĻ、æ­Ŗしい選択ができるようãĢãĒると思いぞす。 äģŠã€ã‚ãĒたはそぎようãĒ選択をするåŋ…čĻãŒãĒいぎで、あãĒたがåĨŊきãĒことをすることをお勧めしぞす。

į§ãŒč¨€ãŖたようãĢ、åŸēæœŦįš„ãĒプログナミãƒŗグぎ非常ãĢåŸēæœŦįš„ãĒもぎīŧˆé–ĸ数とはäŊ•ã‹ã€ifs、fors、配列、そぎäģ–īŧ‰ã¯ã€ãŠãŽč¨€čĒžã§ã‚‚多かれ少ãĒかれå­Ļãļことができぞす。 たとえば、C ++ã§ã¯ã€å¤šããŽéĄžäŧŧį‚šãŒã‚り、そぎようãĒãƒŦベãƒĢīŧˆããŽã‚ˆã†ãĒãƒŦベãƒĢでīŧ‰ãŒæœ€ã‚‚å°‘ãĒく、書く文字が少ãĒいためです。 ãã‚Œã§ã¯ã€č¤‡é›‘ãĒåģēį¯‰ãŽã“とをå­Ļんでも、これãĢついãĻあぞり勉åŧˇã—たりåŋƒé…ã—たりするåŋ…čĻã¯ã‚りぞせん。 つぞり、おもしろいぎは、č‡Ē分がåĨŊきãĒもぎをæŽĸしãĻ、それがすでãĢ朝ぎ4時であることをį†č§Ŗし、åĨŊきだからåē§ãŖãĻæĨŊしãŋぎためãĢ書いãĻãŋることです。 。

Source: https://habr.com/ru/post/J272759/


All Articles