5 ภาษาโปรแกรมใหม่ที่คุณควรรู้

สำหรับบางคนที่เรียนรู้ภาษาการเขียนโปรแกรมใหม่นั้นเป็นการหลีกเลี่ยงที่ดีที่สุด ทำไมพวกเขาโต้เถียงเราต้องการภาษาอื่นอีกหรือเปล่า?


เราไม่มีเพียงพอแล้ว?

ไม่ใช่เครื่องมือที่มีอยู่เพื่อให้งานเสร็จ?

และจากนั้นก็มีผู้แสวงหาที่ไม่เหน็ดเหนื่อยที่กระโดดที่มีโอกาสลองสิ่งใหม่ ๆ และสะดุดกับอัญมณี สำหรับพวกเขาแล้วการเรียนรู้เป็นจุดจบในตัวมันเองและพวกเขาไม่จำเป็นต้องเชื่อมั่นมากนักในการทำลายเกมวันหยุดสุดสัปดาห์ของพวกเขาเพื่อสร้างเกมไพ่ที่ใช้คอนโซลในภาษาใหม่ที่คลุมเครือ.

ไม่ว่าคุณจะเป็นส่วนหนึ่งของค่ายใดมีบางสิ่งที่เกินความขัดแย้งเราทุกคนต้องการใช้เวลากับบางสิ่งที่จะมีอนาคตที่สดใส.

สำหรับผู้คนในค่ายมรดกภาษาที่พวกเขาชื่นชอบในปัจจุบันมีแรงผลักดันมากมายและจะยังคงมีอนาคตที่สดใส สำหรับพวกเขาฉันต้องเตือนว่าห่วงโซ่การพัฒนาที่พวกเขาต้องการในตอนนี้คือ“ kool-aid” ที่หลายคนปฏิเสธที่จะดื่ม และดังนั้นจึงเป็นวันนี้; มีการเพิ่มเทคโนโลยีใหม่เพื่อแก้ไขปัญหาใหม่หรือเพื่อลดความเจ็บปวดจากการพัฒนา.

หากสิ่งนี้ทำอย่างรุนแรงพอโอกาสที่จะฉวยใจและต่อไปถึงด้านบน เมื่อเกิดเหตุการณ์เช่นนี้คุณไม่ต้องการถูกทอดทิ้ง ��

และสำหรับผู้ที่ต้องการวิ่งไปพร้อมกับสิ่งที่แวววาวคำเตือน: การมีความสนุกสนานเป็นสิ่งจำเป็นในฐานะโปรแกรมเมอร์ แต่เราต้องระวังไม่ให้เปลืองพลังงานอย่างไร้จุดหมาย.

แน่ใจ, brainfuck เป็นภาษาเล็ก ๆ น้อย ๆ ที่มีความบิดเบี้ยวคล้ายกับตัวต่อปริศนา แต่คุณไม่น่าจะได้รับประโยชน์จากการทำอย่างจริงจัง คุณต้องการสิ่งใหม่ที่สมเหตุสมผลและมีรากฐานที่มั่นคง.

วิธีเลือกภาษาเหล่านี้

การเลือกภาษาเป็นงานที่น่าวิตกโดยเฉพาะอย่างยิ่งเมื่อมีการพิจารณาภาษาใหม่ ๆ เพื่อประโยชน์ในการจ้างงานและความพึงพอใจในอนาคต ผู้เขียนภาษาทุกคนมีความมั่นใจอย่างแน่วแน่ว่าพวกเขาได้สร้างภาษาที่สมบูรณ์แบบที่สุดเท่าที่จะเป็นไปได้และแก้ไขปัญหาทั้งหมดที่ต้องตอบ แล้วคุณจะตัดอย่างไร?

สำหรับโพสต์นี้ฉันมุ่งเน้นไปที่พารามิเตอร์บางอย่างเพื่อให้การค้นหาของฉันอยู่ในขอบเขตที่เหมาะสม.

วันวางจำหน่าย

ฉันหลีกเลี่ยงภาษาที่เฉพาะเจาะจงซึ่งใหม่มากโดยเฉพาะ.

ใหม่ฉันหมายถึงภาษาที่อายุน้อยกว่า 5-6 ปีในการเขียนและโดยเฉพาะอย่างยิ่งภาษาที่ไม่ได้มีเสถียรภาพ (1.0 รีลีสนั่นคือ) โชคไม่ดีที่ออกกฎบางอย่างเช่นอัญมณีจริง คริสตัล, แต่ฉันหวังว่าจะกลับมาที่นี่และเขียนเกี่ยวกับความสำเร็จในบางวัน ��

ข้อมูลโค้ดใน Crystal (“ เร็วเป็น C, ลื่นเหมือนทับทิม”)

สำหรับฉัน 5-12 ปีคือจุดที่น่าสนใจซึ่งเป็นช่วงที่ภาษามีความเสถียรและมีการปรับแต่งเพิ่มเติม ตอนนี้แน่นอนว่ามีข้อยกเว้นสำหรับกฎนี้และสิ่งเหล่านี้จะได้รับการพิจารณาในกรณีที่เกี่ยวข้อง.

ความสนใจของชุมชนที่เข้มแข็ง

อันนี้เป็นเกมง่ายๆ แต่มักจะถูกละเลยเมื่อเราตื่นเต้นกับสิ่งใหม่ ตอนนี้สำหรับหลาย ๆ คนการสนับสนุนของ บริษัท ขนาดใหญ่นั้นเป็นแบบอย่างที่ดีสำหรับความสำเร็จ แต่ก็ไม่ได้เป็นเช่นนั้นเสมอไป.

ใช่แล้ว Objective-C ของ Apple และตอนนี้ Swift เติบโตเพราะสิ่งเหล่านี้เป็นตัวเลือกเดียวในระบบนิเวศที่มีการควบคุมสูง แต่ Facebook D และ สับ (ความคิดที่น่าเกลียดในภาษาที่น่าเกลียดแล้วในความคิดของฉัน) ยังคงน้อยกว่าการทดลอง.

การผสมผสานที่ลงตัวจะเป็นภาษาที่ได้รับการสนับสนุนจาก บริษัท ขนาดใหญ่ที่มีเสถียรภาพและการกระจายความนิยม (เช่น React).

แต่เนื้อของเรื่องนี้ยังคงเป็นชุมชน หากภาษาไม่สร้างเสียงกระหึ่มและมี devs ไม่เพียงพอที่จะให้ความรู้และทำให้เป็นที่นิยมก็จะไม่ปีนออกจากหลุมฝังศพ GitHub.

สำหรับฉันแล้วกฎนี้ออกมาเป็นภาษาที่น่าดึงดูดและเป็นผู้ใหญ่เช่นกัน แร็กเกต และ Erlang, เมื่อพวกเขายังคงแบนบนกราฟการเติบโต.

USP ที่มุ่งเน้นและมีความชัดเจน

สิ่งที่สามที่ฉันกำลังมองหาคือเป้าหมายที่ชัดเจนสำหรับภาษานั้น ตัวอย่างเช่น PHP เวอร์ชันที่ดีกว่าซึ่งแก้ไขปัญหาการตั้งชื่อและคอมไพล์เป็นภาษาพื้นเมืองของ PHP ไม่ทำงานสำหรับฉัน.

ประโยชน์มีขนาดเล็กเกินไปที่จะแสดงให้เห็นถึงรอยแตกที่จะเกิดขึ้นหากทุกคนพยายามย้ายไป โดยปทัฏฐานนี้ฉันไม่สามารถช่วย แต่ยกเลิกความพยายามเช่น CoffeeScript, และภาษาอื่น ๆ ที่คล้ายกันเพื่อรวบรวม JavaScript.

สุจริตฉันต้องยกเลิกการปรับปรุงเฉพาะไวยากรณ์ทันที ประวัติศาสตร์แสดงให้เห็นว่ามีประโยชน์มากกว่าความเป็นมิตรเมื่อพูดถึงภาษาดังนั้นหากภาษาใหม่ทั้งหมดมุ่งเน้นไปที่ประสบการณ์ที่น่าพอใจยิ่งขึ้นฉันกลัวว่ามันจะไม่สร้างรายชื่อนี้.

ไวยากรณ์ที่ชัดเจนและสอดคล้องกัน

ใช่ฉันรู้. ฉันเพิ่งพูดว่าไวยากรณ์ไม่สำคัญ เพื่อความแม่นยำฉันพูดว่า “การปรับปรุงเฉพาะไวยากรณ์” ไม่สำคัญ แต่ที่กล่าวว่าไวยากรณ์ยังคงเป็นหนึ่งในปัจจัยสำคัญในการเพิ่มผลผลิตและการบำรุงรักษาของโปรแกรมเมอร์ดังนั้นจึงเป็นสิ่งที่ผูกพันกับคุณสมบัติในการคำนวณของฉันที่นี่.

พร้อมกับไวยากรณ์ความคิดของความมั่นคงมาพร้อม การตั้งชื่อฟังก์ชั่นการจัดโครงสร้างโมดูล ฯลฯ เป็นสิ่งสำคัญที่ภาษาไม่สามารถแก้ไขได้ มันคือปี 2018 เพื่อประโยชน์ของพระเจ้าและการออกแบบภาษาอื่น ๆ ที่คล้าย PHP ก็น่าเสียดายสำหรับพวกเราทุกคน ดังนั้นโดยไม่ต้องกังวลใจต่อไปให้เริ่มต้นด้วยคำแนะนำห้าอันดับแรกของเรา.

1. จูเลีย

สำหรับคนที่ MIT แล้วภาษาที่ใช้ได้สำหรับวิทยาศาสตร์ข้อมูลนั้นเป็นสิ่งที่ดีที่สุด Python สำหรับความชัดเจนและความนิยมทั้งหมดไม่มีการสร้างดั้งเดิมสำหรับการจัดการกับวัตถุข้อมูล นอกจากนี้การเป็นภาษาที่ตีความแล้ว Python ก็ช้าสำหรับพวกเขา (ไม่ใช่ไลบรารี่, ระวังคุณเนื่องจากพวกเขาส่วนใหญ่เขียนด้วยภาษา C).

แต่บางทีการปิดเครื่องที่ใหญ่ที่สุดคือโมเดลการทำงานพร้อมกันของ clunky และการขาดโมเดลการคำนวณแบบขนานซึ่งเป็นสิ่งสำคัญในการคำนวณแบบซูเปอร์คอมพิวเตอร์.

ผลที่ตามมา, จูเลีย เกิด.

Julia มาถึงรุ่นที่มีเสถียรภาพในวันที่ 29 กันยายน 2018 แทบไม่กี่วันก่อนที่บทความนี้จะถูกเขียน (พูดคุยเกี่ยวกับเวลา!) นี่คือสิ่งที่เว็บไซต์อย่างเป็นทางการได้พูดเกี่ยวกับความสามารถของมัน:

จูเลียมีความสามารถในการคำนวณเชิงตัวเลข มันมีไวยากรณ์ที่ยอดเยี่ยมสำหรับคณิตศาสตร์สนับสนุนชนิดข้อมูลตัวเลขจำนวนมากและการขนานกันนั้นมีให้บริการนอกกรอบ การจัดส่งหลายครั้งของ Julia นั้นเป็นแบบธรรมชาติสำหรับการกำหนดจำนวนและประเภทข้อมูลที่เหมือนอาร์เรย์.

ฉลาดหลักไวยากรณ์จูเลียอาจถูกมองว่าเป็นการรวมกันของ Python และ C ใช่มันอาจเป็นครั้งแรกที่ภาษามีเป้าหมายเพื่อคุณภาพและความสำเร็จเหล่านี้.

เพื่อให้เรื่องง่ายขึ้นจูเลียไม่ได้บังคับใช้การพิมพ์ที่เข้มงวดและยังเร็วอย่างเห็นได้ชัด นี่คือมาตรฐานบางประการ:

เกณฑ์มาตรฐานจูเลียอย่างเป็นทางการ

อย่างที่คุณเห็น Julia นั้นแย่กว่า C เล็กน้อย แต่พัด Java และ Python ออกจากน้ำ จูเลียทำอาหารอะไรและประเภทอะไร?

ทีนี้นี่คือการใช้งานฟังก์ชั่นสำหรับการคำนวณด้านตรงข้ามมุมฉากของสามเหลี่ยมมุมฉาก:

ในที่สุดขณะที่จูเลียส่วนใหญ่ ระบบนิเวศ เอียงไปทางงานคณิตศาสตร์เป็นอย่างมากฉันเชื่อว่ามันมีอนาคตที่สดใสโดยทั่วไป.

เป็นภาษาแรกในความรู้ของฉันที่ได้รับการสนับสนุนการคำนวณแบบขนานดังนั้นจึงไม่แปลกที่จะเห็นว่ามันได้รับความนิยมมากขึ้นในเว็บและโดเมน IoT.

2. สนิม

หากคุณลองใช้เบราว์เซอร์ Firefox ใหม่คุณจะรู้ว่าในที่สุดหลังจากผ่านการทำงานมาหลายปีดูเหมือนว่าพวกเขาจะสามารถแย่งส่วนแบ่งการตลาดจาก Chrome ได้.

หากเบราว์เซอร์รู้สึกเบาและว่องไวและว่องไวมันก็ต้องขอบคุณภาษา Mozilla ที่พัฒนาขึ้นเป็นพิเศษ: สนิม.

การพูดว่าสนิมมีอนาคตที่สดใสจะเป็นเรื่องโกหก ภาษานี้ประสบความสำเร็จอย่างมากและหากคุณยังไม่เคยได้ยินมาก่อนมันเป็นเพราะพื้นที่ของแอปพลิเคชันมีความเชี่ยวชาญและเป้าหมายที่น่ากลัวคือการแทนที่ C ++! ใช่แล้วในที่สุดเราก็มีภาษาที่ไม่เพียง แต่สามารถทำสิ่งนี้ได้ แต่กำลังทำอยู่แล้ว.

สำหรับคนที่ผิดหวังกับการออกแบบที่หนักหน่วงและความท้าทายในการจัดการหน่วยความจำของ C ++ Rust มาพร้อมกับอากาศที่บริสุทธิ์.

นี่คือลักษณะของโปรแกรม Rust:

ในความคิดของฉันกระชับและสง่างาม Rust ทำตามวิธีการเขียนโปรแกรมที่ใช้งานได้ซึ่งทำให้โค้ดของคุณสามารถแต่งได้มากขึ้นและไม่มีลำดับชั้นเชิงวัตถุที่จะต่อสู้กับ.

ดังนั้นอะไรทำให้ Rust ความกล้าหาญที่จะตามหลัง C ++? เป็นรุ่นหน่วยความจำใหม่ แทนที่จะอาศัยการฟ้อนรำใหม่ () / ลบ () แบบเก่ารัสขอแนะนำแนวคิดการเป็นเจ้าของ.

แทนที่จะจัดสรรและเข้าถึงหน่วยความจำโดยตรงตัวแปร Rust“ ยืม” ซึ่งกันและกันด้วยข้อ จำกัด ที่เข้มงวดโดยคอมไพเลอร์ แนวคิดโดยรวมมีความซับซ้อนเกินกว่าที่จะอธิบายในสองสามคำดังนั้นอย่าลังเลที่จะลองดู เอกสารอย่างเป็นทางการ เพื่อเรียนรู้เพิ่มเติม.

ประเด็นคือผลลัพธ์นี้ปลอดภัยในหน่วยความจำ 100% โดยไม่จำเป็นต้องมีตัวเก็บขยะซึ่งเป็นเรื่องใหญ่.

สนิมได้เข้าสู่โลกแห่งการเขียนโปรแกรมของระบบโดยพายุ ได้รับการสนับสนุนแล้วในบางแพลตฟอร์มพาวเวอร์เบราว์เซอร์และเอ็นจิ้นการแสดงผลแทนที่รหัส C / C ++ บนระบบการผลิตอย่างรวดเร็วและใช้เพื่อเขียนระบบปฏิบัติการ.

แน่นอนว่าไม่ใช่ถ้วยชาของทุกคนที่จะสร้างเบราว์เซอร์หรือไดรเวอร์อุปกรณ์อื่น แต่ Rust ได้แพร่กระจายตัวเองไปยังโดเมนอื่นแล้ว เรามีเฟรมเวิร์กเว็บที่ทำงานได้อย่างสมบูรณ์และรวดเร็วใน Rust และมีการพัฒนาแอปพลิเคชั่นไลบรารีมากขึ้นเรื่อย ๆ.

หากคุณสนใจในอนาคตที่น่าตื่นเต้น Rust เป็นภาษาที่สมบูรณ์แบบและตอนนี้เป็นเวลาที่เหมาะสม สนิมเป็นเครื่องบินที่ถูกถอดออก แต่ยังมีเวลาที่จะขึ้นเครื่องเมื่อมันมุ่งหน้าไปหาดวงดาว!

เรียน สนิมจาก Dmitri Nesteruk.

3. ยาอายุวัฒนะ

ในบรรดาภาษาที่มุ่งเน้นไปที่ความสุขของนักพัฒนาสถานที่แรกได้ถูกสงวนไว้สำหรับ Ruby อย่างถาวร เป็นภาษาที่อ่านเหมือนบทกวีและมีทางลัดเพียงพอที่จะลดแรงเสียดทานทางจิตตามลำดับความสำคัญ.

ไม่ต้องสงสัยเลยว่าเฟรมเวิร์กของ Rails ยังคงครองการพัฒนาสแต็คเต็มรูปแบบสำหรับนักพัฒนาและผู้เริ่มต้นอย่างจริงจัง แต่ไม่ใช่ทุกคนที่มีความสุขกับ Rails โดยเฉพาะหนึ่งในผู้พัฒนาหลัก – José Valim. ฉันคิดว่าผู้สร้างเองอธิบายการกำเนิดของภาษานี้ได้ดีที่สุด สัมภาษณ์:

มันเป็นเรื่องยาว แต่ฉันจะพยายามทำให้มันสั้นและหวาน ย้อนกลับไปในปี 2010 ฉันกำลังทำงานเพื่อปรับปรุงประสิทธิภาพของ Rails เมื่อทำงานกับระบบมัลติคอร์เนื่องจากเครื่องจักรและระบบการผลิตของเรามีการจัดส่งพร้อมคอร์มากขึ้นเรื่อย ๆ อย่างไรก็ตามประสบการณ์ทั้งหมดค่อนข้างน่าผิดหวังเนื่องจาก Ruby ไม่ได้มีเครื่องมือที่เหมาะสมสำหรับการแก้ปัญหาที่เกิดขึ้นพร้อมกัน นั่นคือเมื่อฉันเริ่มดูเทคโนโลยีอื่น ๆ และในที่สุดฉันก็ตกหลุมรักกับ Erlang Virtual Machine.

ฉันเริ่มใช้ Erlang มากขึ้นเรื่อย ๆ และด้วยประสบการณ์ฉันสังเกตเห็นว่าฉันขาดโครงสร้างบางอย่างที่มีในภาษาอื่น ๆ รวมถึงสิ่งที่ใช้งานได้ นั่นคือเมื่อฉันตัดสินใจที่จะสร้าง Elixir ซึ่งเป็นความพยายามที่จะนำโครงสร้างที่แตกต่างและเครื่องมือที่ยอดเยี่ยมบน Erlang VM.

และดูเถิด, ยาอายุวัฒนะ เกิด!

เช่นเดียวกับ Scala ปรับปรุงตามภาษาจาวา แต่ตั้งเป้าเครื่องเสมือนเดียวกันภายใต้ (JVM), Elixir ก็ใช้ประโยชน์จากเครื่องเสมือน Erlang ที่พิสูจน์แล้วจากการต่อสู้มานานหลายทศวรรษ.

ตอนนี้การอภิปรายเกี่ยวกับ Erlang อยู่นอกเหนือขอบเขตของบทความนี้ แต่สิ่งที่คุณควรรู้ขั้นต่ำคือมันเป็นความลับที่ดีที่สุดของอุตสาหกรรมโทรคมนาคม: หากเครือข่ายโทรศัพท์ของเราเชื่อถือได้มากกว่าระบบบนเว็บของเราทั้งหมดขอบคุณ Erlang.

ในแง่ที่เรียบง่ายกว่าความหมายของมันคืออะไร หากคุณกำลังสร้างระบบแบบเรียลไทม์เช่นการแชท Elixir นั้นมี RAM มากและหิวน้อยกว่า Ruby (หรือ PHP, Python และ Java อย่างมาก).

เครื่องจักรที่ใช้ Ruby และ maxes out, พูดว่า 10,000 การเชื่อมต่อพร้อมกันสามารถจัดการ 200,000 ได้อย่างง่ายดายเมื่อใช้ Elixir และยังมี RAM เพียงพอที่จะเรียกใช้เกม 2 มิติ!

ข้อมูลรหัส Elixir

วากยสัมพันธ์ฉลาด, Elixir คัดลอกทับทิมและกรอบเว็บที่โดดเด่นของมัน, Phoenix, คัดลอก Rails อย่างไร้ยางอาย ฉันพูดได้ว่าเป็นสิ่งที่ดีเช่นกันเพราะพร้อมกับ Laravel, Grails, Masonite ฯลฯ เรากำลังมาถึงจุดที่ทุกภาษามีกรอบเหมือน Rails ซึ่งสามารถเปลี่ยนได้ง่าย บางคนอาจเย้ยหยันที่ “ขาดความคิดริเริ่ม” แต่อย่างน้อยฉันก็ไม่บ่น.

ในที่สุด, ยาอายุวัฒนะ เป็นหนึ่งในเทคโนโลยีที่สดชื่นน่าใช้และถูกสาป ร้านค้า Ruby หลายแห่ง (และแม้แต่ที่ไม่ใช่ทับทิม) กำลังย้ายไปที่ Elixir และ บริษัท ใหญ่ ๆ อย่าง Pinterest กำลังใช้งานในการผลิตพร้อมผลลัพธ์ที่น่าพึงพอใจอย่างมาก.

หลายคนคิดว่า Node.js เป็นความพยายามชั่วคราวที่เกิดขึ้นพร้อมกันและในไม่ช้าก็จะถูกแทนที่ด้วย Elixir ฉันต้องบอกว่าฉันเห็นด้วยกับพวกเขา ��

4. Kotlin

ในปี 2560 I / O Google ได้ปล่อยระเบิดใส่ฝูงชนที่ไม่สงสัย บริษัท ประกาศอย่างเป็นทางการ Kotlin เป็นภาษาหลักสำหรับการพัฒนา Android ส่งคลื่นความสั่นสะเทือนผ่านอุตสาหกรรม.

ตอนนี้ Google กำลังมองหาการแทนที่ Java อย่างไม่น่าแปลกใจหลังจากถูกฟ้องร้องจากออราเคิล อย่างไรก็ตามการยอมรับ Kotlin นั้นค่อนข้างคาดไม่ถึงและยังมีโอกาสที่ Google จะเปิดตัวเครื่องเสมือนจริงในไม่ช้า แม้ว่าในขณะนี้ Kotlin กำลังเพลิดเพลินกับการหลั่งไหลเข้ามา.

Kotlin ได้รับการพัฒนาโดย JetBrains ซึ่งเป็น บริษัท ที่รู้จักกันดีในเรื่องของโปรแกรมแก้ไขโค้ดที่ดีอย่างบ้าคลั่ง หนึ่งในนั้นคือ IntelliJ IDEA ซึ่งเป็นรากฐานของ Android Studio เป้าหมายการออกแบบของ Kotlin คือความปลอดภัยความกระชับและการใช้งานร่วมกันได้ 100% กับ Java.

ยิ่งกว่าสิ่งอื่นใดคอมไพเลอร์ Kotlin ทำงานหนักเป็นพิเศษเพื่อกำจัดข้อยกเว้นตัวชี้โมฆะที่พบได้ทั่วไปในโลก Java นอกจากนี้ยังช่วยลดการใช้คำฟุ่มเฟือยของภาษาจาวาได้ค่อนข้างน้อยซึ่งจะช่วยบรรเทาความเดือดร้อนให้กับคนจำนวนมาก.

นี่เป็นการเปรียบเทียบรหัสที่ยอดเยี่ยมระหว่าง Java กับ Kotlin:

เครดิตรูปภาพ: hype.codes

รหัส Kotlin สั้นลงอย่างมากและมีความรู้ความเข้าใจน้อยเกินกว่าที่จะไถนาได้.

แต่ขอให้เข้าใจอย่างชัดเจน: Kotlin ไม่น่าจะมาแทนที่ Java ได้แม้ว่ามันจะกลายเป็นสิ่งที่โปรดปรานอย่างรวดเร็ว ฉันเชื่อว่าสิบปีข้างหน้าทีมขนาดเล็กถึงขนาดกลางจะไม่มองไกลไปกว่า Kotlin ในขณะที่กลุ่มใหญ่จะยังคงใช้ Java อย่างหมดจดเพราะเหตุผลดั้งเดิม.

ที่กล่าวว่า Kotlin มีอนาคตที่สดใสเป็นอย่างที่มันทำทุกอย่างที่ Java ทำสามารถผสานกับโค้ด Java โดยไม่มีใครสังเกตเห็นและเป็นที่พอใจมากขึ้น!

5. TypeScript

พระเจ้ารู้ดีว่าฉันต้องยับยั้งตัวเองในจุดนี้! ทุกสิ่งในตัวฉันกรีดร้อง“ เอล์ม! Elm!” แต่ไม่ว่าแนวคิดของการปฏิวัติจะเป็นอย่างไรหรือว่าวากยสัมพันธ์ของพระเจ้านั้นเป็นอย่างไรเอล์มก็ยังถูกมองว่าเป็นทางเลือกหลักสำหรับการทำงานส่วนหน้า ��ต่อไปเรามาดูว่าอะไรคือกระแสหลัก: TypeScript.

JavaScript เป็นเหมือนผลเบอร์รี่ป่า: น่าเกลียดและน่ารังเกียจ แต่คุณต้องท้องถ้าคุณต้องการที่จะอยู่รอดในป่าแห่งการพัฒนาส่วนหน้า มีความพยายามหลายครั้งในการแทนที่ (และส่วนใหญ่มาตรฐาน WebAssembly ใหม่จะสำเร็จ) แต่สิ่งที่ดึงดูดความสนใจของทุกคนอย่างแท้จริงคือ superset ที่พัฒนาโดย Microsoft.

มีโอกาสที่ยอดเยี่ยมที่คุณเคยได้ยิน สิ่งที่พิมพ์ด้วยพิมพ์ดีด: Angular เป็นกรอบแรกที่โอบกอดมันตั้งแต่เวอร์ชัน 2 เป็นต้นไปและผู้คนก็ทราบได้อย่างรวดเร็ว นั่นเป็นเพราะ TypeScript เพิ่มสิ่งที่จำเป็นมากและมหาอำนาจที่ยอดเยี่ยมให้กับภาษาการเขียนโปรแกรมที่มีชื่อเสียงที่สุดในโลก.

ใช่ในที่สุดก็เป็นไปได้ที่จะเขียนโค้ด JavaScript ดั้งเดิมโดยไม่ต้องทรมานและสาปแช่งการเกิดของใคร!

นี่คือการปรับปรุงที่ TypeScript นำมาสู่ตาราง:

✓การพิมพ์ที่แข็งแกร่ง: ในที่สุดสตริงไม่ใช่ตัวเลขและตัวเลขไม่ใช่วัตถุซึ่งไม่ใช่อาร์เรย์ว่าง!

✓การตรวจสอบประเภทเวลารวบรวม: หากรหัสของคุณคอมไพล์อย่างถูกต้องจะรับประกันว่ามากหรือน้อยที่จะปลอดจากหูดของจาวาสคริปต์.

✓ชั้นเรียนและโมดูล: ใช่คลาสเป็นมาตรฐานใน ES6 แต่จะรวมอยู่ใน TypeScript ด้วยนอกเหนือจากระบบโมดูลที่เรียบร้อย.

✓การอนุมานประเภท: สำหรับประเภทที่ซับซ้อนคอมไพเลอร์สามารถหาได้ง่ายโดยคอมไพเลอร์ช่วยให้คุณปวดหัว.

✓ Async / รอ: คำหลักและรูปแบบ async / ที่รอคอยเป็นพื้นฐานดังนั้นไม่ต้องยุ่งกับ Promises และ Callbacks อีกต่อไป!

เนมสเปซ, ยาชื่อสามัญ, สิ่งอันดับ . . ฉันสามารถไปเรื่อย ๆ ได้ แต่มันก็เพียงพอแล้วที่จะบอกว่า TypeScript แปลงประสบการณ์การพัฒนาที่เลวร้ายที่สุดให้เป็นหนึ่งในดีที่สุด.

ข้อมูลโค้ดของ TypeScript

ไม่สามารถปฏิเสธผลกระทบของ TypeScript มันผลักดันความพยายามที่คล้ายกันเช่น Dart ของ Google ออกจากสนาม (แม้ว่าจะพยายามคัมแบ็กผ่าน Flutter ซึ่งเป็นกรอบการพัฒนามือถือ) และเปิดตาของนักพัฒนา JS ให้ได้ประโยชน์จากประเภทที่แข็งแกร่งกว่า.

ด้วยเหตุนี้ไลบรารีที่สำคัญเช่น React, D3, Vue (แม้กระทั่ง jQuery!) จะมีเวอร์ชัน TypeScript และในร้านซอฟต์แวร์ที่ดีที่สุดทั่วโลกรหัส JavaScript ทั้งหมดจะถูกเขียนเป็นรหัส TypeScript ส่วนหัวของ TypeScript พร้อมใช้งานสำหรับ Node.js เช่นกัน (โดยสุจริตหากโหนดสามารถปรับปรุงเรื่องการทำงานพร้อมกันและแก้ไขการจัดการหน่วยความจำที่มีหมัดมันจะคงอยู่ตลอดไป).

คุณอาจประหลาดใจที่รู้ว่าผู้สร้าง Node.js หลังจากที่เปิดเผยต่อสาธารณะ เสียใจ การสร้างของเขากำลังทำงานใน รันไทม์ใหม่ (ขณะนี้ไม่มีเว็บไซต์อย่างเป็นทางการเพียง GitHub repo) ที่มี TypeScript เป็นภาษาหลัก.

ข่าวที่ดีที่สุด? TypeScript มีขนาดเล็ก ภาษาที่จะเรียนรู้ ด้วยผลประโยชน์มากมายในอนาคต หากคุณเป็นผู้พัฒนา JavaScript ระดับกลางคุณจะได้รับ TypeScript เพียงพอภายในสองวันเพื่อทำการโอนย้ายรหัสที่มีอยู่ทั้งหมดของคุณ!

สรุปและข้อจำกัดความรับผิดชอบ

ภาษาที่เฉพาะเจาะจงได้รับความนิยมมากพอ ๆ กับภาษาในบทความนี้ แต่ไม่ได้รวมอยู่ในรายการด้วยเหตุผลหลายประการ นี่คือภาพย่อ:

  • Golang: จัดตั้งขึ้นแล้วเป็นกระแสหลักหากไม่ได้รับความนิยมมากภาษา ฉันเชื่อว่า ณ จุดนี้ Golang มีคู่แข่งหลายรายที่จะทำให้ส่วนแบ่งการตลาดต่ำ.
  • R: R นั้นร้อนแรงในหมู่นักวิทยาศาสตร์ด้านข้อมูลและไม่น่าดึงดูดนักพัฒนาแอปพลิเคชันมากนัก นอกจากนี้เราต้องไม่ลืมว่าไลบรารีการเรียนรู้ของเครื่องกำลังช้าลงในภาษาที่สำคัญทั้งหมด (เพื่อประโยชน์ของพระเจ้าแม้แต่ PHP ก็มีตอนนี้!) ดังนั้นสิ่งที่คุณต้องทำคือรอสักครู่ ��
  • Swift: Apple มีระบบจับยึดเหล็กในระบบนิเวศน์และ Swift เป็นภาษาเดียวที่มี ไม่ต้องสงสัยเลยว่า Objective C รุ่นก่อนหน้านี้เป็นที่คลั่งไคล้อย่างรวดเร็วในขณะนี้ ฉันคิดว่ามันเป็นการโกงและปฏิเสธที่จะรวมไว้ที่นี่ ��

อนาคตไม่แน่นอนอยู่เสมอและวิธีหนึ่งในการทำงานเกี่ยวกับอาชีพของคุณก็คือการยึดติดกับสิ่งที่ทำงานอยู่แล้วและปฏิเสธที่จะ “รับสมาธิ” หากคุณทำเช่นนั้น Java, PHP, Python, Ruby ฯลฯ เป็นภาษาที่ยอดเยี่ยมทั้งหมด อย่างไรก็ตามสำหรับพวกเราบางคนบรรทัดฐานไม่เพียงพอ พวกเขาต้องการออกไปสำรวจและวางเดิมพันขนาดใหญ่ในอนาคต หากคุณอยู่ในค่ายหลังหนึ่งในห้าภาษาเหล่านี้ควรอยู่ด้านบนสุดของรายการที่ต้องทำ.

ท้ายที่สุดเมื่อพยายามประเมินภาษาอย่าให้ความพยายามมาครอบงำคุณเพราะมันไม่มาก หากคุณรู้จักภาษาการเขียนโปรแกรมสองสามภาษาคุณสามารถเรียนรู้ภาษาเหล่านี้ได้ภายในสองเดือนสูงสุดโดยใช้เวลา 5-6 ชั่วโมงต่อสัปดาห์ ในขณะที่ความสุขและผลตอบแทนทางการเงินที่สามารถสร้างได้ในอนาคตจะเพิ่มขึ้นอีกหลายเท่า.

ฉันคิดถึงภาษาที่สำคัญบางอย่างที่นี่หรือไม่? หรือฉันอาจมีบางอย่างผิดปกติเกี่ยวกับภาษาที่ระบุไว้ที่นี่ ถ้าเป็นเช่นนั้นโปรดได้โปรดแสดงความคิดเห็นและช่วยฉันปรับปรุง ��

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map