Ê×Ò³
ѧϰ
»î¶¯
רÇø
¹¤¾ß
TVP
·¢²¼
¾«Ñ¡ÄÚÈÝ/¼¼ÊõÉçȺ/ÓŻݲúÆ·,¾¡ÔÚС³ÌÐò
Á¢¼´Ç°Íù

ÈçºÎ³ÉΪһÃû¸üÓÅÐãµÄ³ÌÐòÔ±£¿ÎÒ×ܽá³ö 7 Ìõ½¨Òé

Ïë³ÉΪһÃûÓÅÐã³ÌÐòÔ±£¿±¾ÎÄ×÷ÕßÓÃ×Ô¼ºÊ®¼¸ÄêµÄ¾­Ñ飬Ìá³öÁËÆßÌõ½¨ÒéºÍ¾ßÌå´ëÊ©¡£

Óм¸¸öÈËÔÚ React ´ó»áÉÏÏòÎÒÇë½ÌÒ»¸öÎÊÌ⡪¡ªÈçºÎ³ÉΪһÃû¸üÓÅÐãµÄ³ÌÐòÔ±¡£ÈËÃǽ«ÎÒÊÓΪһÃû·Ç³£×ÊÉîµÄ³ÌÐòÔ±£¬Òò´ËÖµµÃÌýÌýÎҵĽ¨Òé¡£ÎÒ¾õµÃ¿ÉÒÔ·ÖÏíһϣ¬×Ô¼º¶àÄêÀ´ÔÚ±à³Ì·½ÃæµÄ¡°Ë¼Î¬Ä£Ê½¡±¡£

ÏȼòÒª×ÔÎÒ½éÉÜһϣºÎҽРJames Long£¬½ñÄê 32 Ë꣬Óг¬¹ý 10 ÄêµÄ·á¸»¹¤×÷¾­Ñé¡£²»¹ý£¬Ö±µ½½ü¼¸Ä꣬ÎҲŶÔ×Ô¼ºµÄ¹¤×÷Ô½À´Ô½ÓÐÐÅÐÄ¡£¼´Ê¹ÏÖÔÚ£¬ÎÒ»¹ÊDz»¶Ï»³ÒÉ×Ô¼º¡£¹Ø¼üÊÇÕâÖָоõ²»»áÏûʧ£¬ËùÒÔÊÔןöÂÔËü£¬¼ÌÐøÉ¼¼Êõ֪ʶ£¬¼ÌÐø»ýÀÛ¾­Ñé¡£

ÎÒÔÙ´ÎÌáÐÑһϣ¬ÕâЩֻÊÇÌá¸ßÄã¼¼Äܵļ¸µã½¨Òé¡£×îÖÕ£¬ÄãÐèҪŪÇå³þ×Ô¼ºÊʺϵķ½Ê½ÊÇʲô¡£

1. ÕÒµ½Äܼ¤ÀøÄãµÄÈË£¬µ«²»Òª³ç°ÝËûÃÇ

¹ýÈ¥Ðí¶àÄ꣬ÎÒÑöĽ¹ýÐí¶àÈË£¬²¢ÇÒͨ¹ýËûÃǹØעм¼Êõ¡£ÎÒÏàÐÅËûÃÇÊÇÕýÈ·µÄ£¬²¢ÇÒ¶ÔËûÃÇËù×öµÄÊÂÇéÉîÈëÑо¿£¬Òò´Ëѧµ½ºÜ¶à¡£

ÕâЩÈËÍùÍù·Ç³£¸ßЧ¡¢²Å»ªºáÒ磬²¢ÇÒÄܹÄÎèÈËÐÄ¡£ÄãÒªÏ뾡°ì·¨ÕÒµ½ËûÃÇ£¬ÈÃËûÃǼ¤ÀøºÍÖ¸µ¼Äã¡£

²»¹ý£¬±ð³ç°ÝËûÃÇ¡£Èç¹û½ö¿´ twitter ÉϵÄÌù×Ó£¬Äã»á¾õµÃËûÃÇÒ£²»¿É¼°¡£µ«ÊÇ£¬Èç¹û×ß½üËûÃǵÄÕæʵ¹¤×÷ÖУ¬Äã»á·¢ÏÖ×Ô¼ºÓëËûÃÇÏà±Èûʲô²»Í¬¡£Ö»²»¹ýÔÚµ½´¦ÃþË÷³¢ÊÔ¶øÒÑ£¬ÎÒÃǶ¼Ö»ÊÇÔÚ½øÐÐÊÔÑé¡£

×îºó£¬²»ÒªÃ¤Ä¿µØÏàÐÅËûÃÇ¡£Èç¹ûÄãÓв»Í¬Òâ¼û£¬¾ÍÇëËûÃDzÎÓë½øÀ´£¬²¢´Ó¹ÛµãÅöײµÄ¹ý³ÌÖм³È¡¾­Ñé¡£

ÎÒµÄһЩ×îÓгÉЧµÄ¶Ô»°¾ÍÊÇÕâÑù·¢ÉúµÄ¡£Ôø¾­£¬ÎÒµÄ Emacs ÅäÖÃÒ»ÍÅÔã¡£²»ÖªµÀΪʲô£¬ÎÒµÄ OCaml autocompletion ²»ÄÜÓÃÁË£¨Ëü»µÁËÒ»¸ö¶àÔ£©¡£ÎÒûÓÐ×Ô¶¯»¯µÄ¶«Î÷£¬ÓÐʱ±ØÐëÔÚ shell ÀúÊ·ÖÐÑ°ÕÒËùÐèµÄÃüÁΪÐÞ¸´ÎÊÌ⣬ÎÒÒ»¿ªÊ¼Ð´ ugliest ´úÂë¡£ÎÒ½«¶«Î÷д³ÉÈ«¾Ö¶ÔÏó£¬Ö±µ½×îºó²ÅÃ÷°×ÎÒµ½µ××öÁËʲô¡£

×îÓо­ÑéµÄ³ÌÐòÔ±Ò»Ö±ÔÚÆƽâºÍ×êÑУ»×îÖØÒªµÄÊÇ£¬ÄãÄÜÍê³ÉÈÎÎñ£¬´ï³ÉÄ¿±ê¡£

2. ²»Òª±áµÍ×Ô¼ºµÄ¹¤×÷

³ÌÐòԱС°×ÍùÍùÈÏΪËûÃǵŤ×÷¼ÛÖµ²»´ó£¬ÒòΪËûÃÇÊÇÐÂÊÖ¡£»òÕßÄã¿ÉÄÜÊÇÒ»ÃûÓо­ÑéµÄ³ÌÐòÔ±£¬µ«ÊÇÔÚÒ»¸öÐÂÁìÓò¹¤×÷£¬Õâ»áÈÃÄã¸Ðµ½²»Ë¬¡£µ«ÔÚÎÒ¿´À´£¬×îºÃµÄÏë·¨ÍùÍùÀ´×ÔÓÚгÌÐòÔ±£¬ËûÃÇ¿ÉÒÔ¿´µ½ÏÖÓм¼ÊõµÄ¸Ä½øµã£¬¶ø˼ά¹Ì»¯µÄÈËÈ´¿´²»¼û¡£

²»¹ÜÔõÑù£¬ÄãµÄ¹¤×÷¶¼ÊÇÖµµÃµÄ¡£×µÄÇé¿öÊÇ£¬¼´Ê¹ÄãµÄÏ뷨ûÓгɹ¦£¬ÉçÇøÒ²¿ÉÒÔ´ÓÖÐÁ˽⵽ΪʲôÕâÖÖ·½·¨Ðв»Í¨¡£

£¨¸øÉçÇøµÄÒ»¸öÌáʾ£ºÕâҪȡ¾öÓÚÎÒÃÇÊÇÔõô×öµÄ£¬²¢ÈÃÐÂÈ˺ÜÈÝÒ×ÈÚÈë½øÀ´¡££©

3. ²»ÒªÒòΪº¦ÅÂÂäÎé¶ø²»Í£¹¤×÷

ÿÌ춼»áÓÐм¼ÊõÎÊÊÀ£¬Èç¹ûÄãÒ»ÍíÉϲ»Åö¼¼Êõ£¬¿ÉÄܾͻá¸Ð¾õ¸ú²»ÉÏÕâ¸öÊÀ½ç¡£Õâ²»ÊÇÕæµÄ¡£ÊÂʵÉÏ£¬Èç¹û¾­³£·ÅÏÂÊÖÍ·¹¤×÷£¬Äã»á×öµÃ¸üºÃ£¬ÒòΪÄã»áÓÐÐÂÏë·¨¡£

ÎÒ·¢ÏÖ£¬µ±²»¹¤×÷µÄʱºò£¬ÎÒ×Ü»áÓÐÐÂÏë·¨²»¶Ï²úÉú¡£

ʵ¼ÊÉÏ£¬ÍøÂçÉÏÿÌì·¢²¼µÄÄÚÈÝ´ó¶àÊÇ¡°ÐÂƿװ¾É¾Æ¡±£¬ÕæÕý¾ßÓиïÃüÐԵļ¼Êõÿ¸ô¼¸Äê²Å»á³öÏÖÒ»´Î¡£¹ØÓÚÕâ¸öÎÊÌ⣬Äã¿ÉÒÔ¿´¿´Õâ¸öÊÓƵ¡ª¡ª Hammock Driven Development ¡£

https://www.youtube.com/watch?v=f84n5oFoZBc

4. ºöÂÔ fluff

¿Í¹ÛÉÏ˵£¬ÄãÄÜÈ¡µÃ¸ü¿ì½ø²½µÄÖ÷Òª·½·¨Ö®Ò»ÊǺöÂÔÄÇЩ²¢²»ÄÜÌá¸ß¼¼Äܵġ°fluff¡±¡£»»¾ä»°Ëµ£¬Òª¡°´ÏÃ÷µÄÀûÓÃʱ¼ä¡±¡£Ò»ÌìµÄʱ¼äÓÐÏÞ£¬ÄãÐèÒª½«Ê±¼ä»¨ÔÚ×êÑиüÉî²ã´ÎµÄÊÂÇéÉÏ¡£Ëæ×Åʱ¼äµÄ·¢Õ¹£¬Äã»á·¢ÏÖ×Ô¼ºÓкܴó½ø²½¡£

ÄÇʲôÊÇ¡°fluff¡±£¿ÕâÈ¡¾öÓÚÄã×ÔÉíµÄ¾ßÌåÇé¿ö¡£µ«ÊÇ£¬ÎÒ¿ÉÒÔ¸øÄãһЩÎÒÈÏΪÊÇ¡°fluff" µÄÀý×Ó£ºÓïÑÔÓï·¨¡¢¿â API ºÍÅäÖù¹½¨¹¤¾ß¡£ÀýÈ磬ѧϰһ¸öÐ嵀 ES7 JS Óï·¨²¢²»»áÈÃÄã³ÉΪһ¸ö¸üºÃµÄ³ÌÐòÔ±£¬Õâ¾ÍÏñѧϰ±àÒëÆ÷ÊÇÈçºÎ¹¤×÷µÄÒ»Ñù¡£Í¬Ñù£¬²ÉÓÃÒ»¸öʵÏÖÏàͬÏ뷨ȴʹÓÃРAPI µÄпâҲû¶à´óÒâÒå¡£µ±È»£¬ÕâЩÊÂÇéºÜÖØÒª£¬µ«ÎÒ½¨ÒéÄ㻨¸ü¶àʱ¼äѧϰ¸üÉî²ã´ÎµÄ¸ÅÄî¡£ÕâЩ¸ÅÄî¿ÉÒÔÈÃÄãÖÕÉúÊÜÒæ·Ëdz¡£

ÎÒÓиöÎÊÌâÏëÎÊÄ㣺ÄãÊÇ·ñ»¨·Ñ´ó°Ñʱ¼äÈôúÂë¿´ÆðÀ´ºÜƯÁÁ£¿Èç¹ûÊÇÕâÑù£¬ÎÒ½¨ÒéÄ㲻Ҫ̫¹Ø×¢ÕâÑùµÄÊ¡£²»¹ÜÔõÑù£¬Ëæ×Åʱ¼ä·¢Õ¹£¬ÄãµÄ´úÂë»áÓкܶà¸Ä±ä¡£

×îºÃ½«×¢ÒâÁ¦¼¯ÖÐÔÚÄãÊÔͼ½â¾öµÄºËÐÄÎÊÌâÉÏ£¬±ÈÈç×Ðϸ¿¼ÂÇÒ»ÏÂÄãµÄ³éÏó²ã¡£ÔÚÍê³ÉËùÓÐÕâЩ¹¤×÷ºó£¬Äã¿ÉÒÔ»¨µãʱ¼äÀ´¸Ä½ø´úÂë¡£ÕâÒ²ÊÊÓÃÓÚ DRY Ô­Ôò£¨Don¡¯t Repeat Yourself£¬²»ÒªÐ´Öظ´µÄ´úÂ룩¡£²»¹ý±ðÄÇôµ£ÐÄ£¬ËæÒ⸴ÖÆÕ³Ìù°É¡£

5. ÉîÈëѧϰ¹ýÈ¥µÄÑо¿³É¹û

Èç¹ûÄãÓÐÒ»¸öÐÂÏë·¨£¬¾Í»á¸Ðµ½ºÜÐË·Ü£¬Çé²»×Ô½ûµØÏë×øÏÂÀ´ÂíÉÏÐж¯¡£µ«ÊÇ£¬Äã²»Ó¦¸ÃÕâÑù×ö£¬ÄãÓ¦¸ÃÏÈ×öһЩ´ÖÂÔÑо¿£¬Á˽âÇ°ÈËÊÇÈçºÎ½â¾öËüµÄ¡£Åöµ½ÀàËÆÇé¿öʱ£¬ÏÈ»¨¼¸Ììʱ¼äÑо¿Ò»Ï£¬×îÖջ᳹µ×¸Ä±äÎÒÃǽâ¾öÎÊÌâµÄ·½Ê½¡£

ѧ»áÔĶÁѧÊõÂÛÎÄÊÇÒ»ÏîºÜ±¦¹óµÄ¼¼ÄÜ¡£ÎÒ¶Ô denotational¡¢operational µÈÓïÒåÒ»ÎÞËùÖª£¬ËùÒÔÎÒ¿´²»¶®ºÜ¶àÂÛÎÄ¡£µ«ÊÇ£¬ÓкܶàÂÛÎÄʹÓôúÂë¶ø²»ÊÇÊýѧ¹«Ê½À´²ûÊöÎÊÌ⣬Òò´Ë²¢²»»áÌ«ÄѶÁ¡£¹ýÈ¥ 30 ÄêÀ´£¬ÓдóÁ¿µÄ֪ʶͨ¹ýÂÛÎÄ·¢±í³öÀ´¡£Èç¹ûÄãÉÆÓÚ»ñÈ¡ÕâЩÐÅÏ¢£¬ÄãºÜ¿ì¾Í»á³ÉΪ˼ÏëÁìÐä¡£

Prettier ÊÇÒ»¸ö¼ÑÀý¡£ÎÒÖªµÀ×Ô¼ºÏëÒªµÄÊÇʲô£¬µ«²»ÖªµÀÈçºÎʵÏÖËü¡£×ö¹ýһЩÑо¿ºó£¬ÎÒ·¢ÏÖÕâƪÂÛÎÄ£¬ÔÙ¹ý¼¸Ììºó£¬ÎÒ¾ÍÖªµÀÔõô×öÁË¡£ÎÒÔÚÒ»ÖÜÄھͰÑÖ÷Ì幤×÷È«Íê³ÉÁË¡£Èç¹ûºöÂÔ±ðÈ˵ÄÑо¿³É¹û£¬ÄÇÎÒ¾ÍÒª»¨¸ü³¤Ê±¼ä¡£

http://homepages.inf.ed.ac.uk/wadler/papers/prettier/prettier.pdf

Èç¹ûÄãÏëÑ°ÕÒÂÛÎĵĻ°£¬GitHub ¿â Papers We Love ÊÇÒ»¸öÍƼö¡£

https://github.com/papers-we-love/papers-we-love

6. È¥²ÎÓëһЩ´óÏîÄ¿

¾­Ñé±ÈÈκζ«Î÷¶¼±¦¹ó¡£²»ÊÇÿ¸öÈ˶¼Óлú»áÈ¥³¢ÊÔ£¬µ«Èç¹ûÓÐʱ¼ä£¬Äã¿ÉÒÔÊÔ×ÅÈ¥×öһЩ´óÏîÄ¿¡£ÄãÉõÖÁ²»ÐèҪȥÍê³ÉËüÃÇ¡£½ö½öÊdz¢ÊÔдһ¸ö±àÒëÆ÷Ö®ÀàµÄ¶«Î÷£¬Õâ¾ÍÄÜÔÚ¿ªÊ¼¼¸ÖܽÌÄãºÜ¶à¶«Î÷¡£

˵ʵ»°£¬ÎÒºÜÌÖÑáÄÇÖÖÎÒ²»ÖªµÀÈçºÎ½â¾ö¸´ÔÓÎÊÌâµÄ¸Ð¾õ¡£ÕâÈÃÈ˺ÜÍ´¿à¡£ÔÚ½Ó½ü½â¾ö·½°¸Ç°£¬ÎÒ±ØÐë×ö´óÁ¿µÄÑо¿ºÍѧϰ¡£ÓйýÕâÑùµÄÍ´¿à¾­Àúºó£¬ÎÒ×ÜÊÇ¿ÉÒԵõ½ÌáÉý£¬³ÉΪ¸üÓÅÐãµÄ³ÌÐòÔ±¡£

´ÓѧϰһÃÅÐÂÓïÑÔ¿ªÊ¼¡£ÕâÊÇ°ïÄã°ÚÍѵ±Ç°Ï°¹ßºÍ´ÓнǶȿ´ÎÊÌâµÄ×îÓÐЧ·½·¨¡£

¶ÔÎÒÀ´Ëµ£¬µ±ÎÒ»¹ÊÇÒ»¸öÄêÇáµÄ³ÌÐòԱʱ£¬ÎÒ×öµÄ×îºÃÊÂÇé¾ÍÊÇѧϰ Scheme ¡£ÕâÊÇÒ»Ãŷdz£¼òµ¥µÄÓïÑÔ£¬Ëü»áÇ¿ÆÈÄãÒÔº¯ÊýʽµÄ·½Ê½Íê³ÉËùÓÐÊÂÇ飬²¢ÕæÕýÁ˽â´úÂ빤×÷µÄ»ù±¾Ô­Àí¡£ÎÒÔÚ Scheme ÉÏ»¨·ÑÊýÄêʱ¼ä£¬Ö±µ½½ñÌìÈÔÈ»ÊÜÒæ¡£²¢ÇÒ£¬ÎÒ¶Ô´úÂëµÄ¿´·¨·¢Éú¸ù±¾ÐԸı䡣

7. ½¨Òé×öµÄÁù¼þÊÂ

ÎÒÍƼö×ö¼¸¼þÊ£¬ÕâЩ¶¼ÎҵijÌÐòÔ±ÉúÑIJúÉúÖØ´óÓ°Ïì¡£²¢ÇÒ£¬ËûÃÇÖеÄÐí¶àÊÂÖ±µ½ÏÖÔÚ»¹ÒÔ΢ÃîµÄ·½Ê½Ó°ÏìÎÒ£¬°ïÎÒ¶ÔÐÂÏë·¨½øÐзÖÎö¡£ÎªÁ˳ÉΪһÃûÓÅÐãµÄ³ÌÐòÔ±£¬ÄãÎÞÐè×öÍêÈ«ÏàͬµÄÊ£¬Äã¿ÉÒÔѧϰºÜ¶àÆäËû¶«Î÷Ìá¸ß×Ô¼º¡£

ѧϰ C ÓïÑÔ¡ª¡ªÈç¹ûÄãûѧ¹ý£¬Ñ§Ò»Ð©»ù±¾µÄ¾Í¹»ÁË¡£ÊÔ×ÅÈ¥ÏëÏ룬Ϊʲôÿ¸öÈ˶¼±§Ô¹Ëü£¬Õâ¼þÊ·dz£ÓмÛÖµ¡£

дһ¸ö±àÒëÆ÷¡ª¡ªÕâ¿ÉÄÜÈÃÄãºÜ²»Ë¬£¬¿ÉÒÔ¿´¿´ super tiny compiler ÏîÄ¿¡£

ѧϰºê¡ª¡ªÇë²Î¿¼ Scheme¡¢Lisp »ò Clojure£¨½Å±¾£©¡£ºê»áÕæÕý¸Ä±äÄã¶Ô´úÂëµÄ¿´·¨¡£

SICP¡ª¡ª SICP ÊÇÒ»±¾¾ÉÊ飬ÎÒÈÏΪֱµ½½ñÌìÈÔÈ»ºÜÓмÛÖµ£¨ÓÐЩÈË»òÐí²»ÔÞ³ÉÕâ¸ö¹Ûµã£©¡£Ö»ÒªÄãÓкÜÉٵıà³Ì֪ʶ£¬Ëü¾Í¿ÉÒÔÒýµ¼ÄãһֱʵÏÖ a meta-circular evaluator ºÍ compiler¡£ÁíÒ»±¾£¬ÎÒºÜϲ»¶²¢ÔÚ±àÒëÆ÷·½Ãæ×ö¹ýÉîÈëÑо¿µÄÊéÊÇ Lisp In Small Pieces ¡£

Á˽â Continuations£ºContinuations ÊÇÒ»Öֵͼ¶µÄ¿ØÖÆÁ÷»úÖÆ¡£Scheme ÊÇΨһʵÏÖËüµÄÓïÑÔ¡£ËäÈ»ÄãÓÀÔ¶²»»áÔÚÉú²ú»·¾³ÖÐʹÓÃËüÃÇ£¬µ«ËüÃÇ»á¸Ä±äÄã¶Ô¿ØÖÆÁ÷µÄ¿´·¨¡£ÎÒд¹ýһƪÊÔ׎âÊÍËüÃǵIJ©ÎÄ¡£

Èç¹ûÓпÉÄܵĻ°£¬ÊÔ×ÅʹÓÃÒ»ÖÖÐÂÓïÑÔ£º²»¹ÜÄã×öʲô£¬ÄãÕæµÄÓ¦¸Ã̽Ë÷ÆäËûÓïÑÔ¡£ÎÒÍƼöÒÔÏÂÈκÎÒ»¸ö£ºClojure¡¢Rust¡¢Elm¡¢OCaml/Reason¡¢Go »ò Scheme ¶¼¿ÉÒÔ¡£ËüÃǶ¼ÓÐ×Ô¼ºµÄÌص㣬¿ÉÒÔÇýʹÄãѧϰһÖÖеÄ˼ά·½Ê½¡£

  • ·¢±íÓÚ:
  • Ô­ÎÄÁ´½Ó£ºhttp://news.51cto.com/art/202005/615962.htm
  • ÈçÓÐÇÖȨ£¬ÇëÁªÏµ cloudcommunity@tencent.com ɾ³ý¡£

Ïà¹Ø¿ìѶ

ɨÂë

Ìí¼ÓÕ¾³¤ ½ø½»Á÷Ⱥ

ÁìȡרÊô 10ÔªÎÞÃż÷ȯ

˽Ïí×îР¼¼Êõ¸É»õ

ɨÂë¼ÓÈ뿪·¢ÕßÉçȺ
Áìȯ
http://www.vxiaotou.com