իհարկե ողջունելի ա, որ ցանկանում եք գիտելիքներով կիսվել, բայց շատ խառը ելույթ ա։ Կարելի էր ավելի քիչ մասի վրա կենտրոնանալ ու ընդհանուր բնույթի ինֆորմացիա տալ, իսկ ստեղ ինֆոն շատ ցաքուցրիվ ա ու բազմազան։ Եթե հենց էս ուղղության վրա խորացած չես, դժվար ա ընկալել։
Hi folks! In the last slide I made a typo. The books should be these: Programming Language Foundations: softwarefoundations.cis.upenn.edu/plf-current/index.html TAPL: www.cis.upenn.edu/~bcpierce/tapl/ Dragon Book: en.wikipedia.org/wiki/Compilers:_Principles,_Techniques,_and_Tools Software Abstractions: mitpress.mit.edu/books/software-abstractions-revised-edition Let me know if you find any slide-bugs!
Frameworks are the efforts of other engineers to help you build applications. Building a framework comes with grave responsibility. 09:00 A library is a tool. It's on you to manage and use that library. When using a framework it's flipped. The overall structure & management of the system is done by the framework you simply fill in the gaps that the framework calls into. What's baked into the framework is the experience from the engineers on what they believe is the best way to build the system. 11:27 API design UX is very important. API should be small. Eliminate redundant functions. Make intuitive functions with descriptive names and easy to understand concepts. 15:00 Orthogonal API Each function has an opposite: first/last, push/pop, add/remove, etc. This makes a complete API. 16:50 Encapsulation Don't leak your internals to outside code. 18:15 Documentation Clear comments and sample code. 19:00 Error handling Help the user answer how to handle the error. 21:10 N+1 problem You will always miss some use case or functionality. Create a system that can handle plugins so other engineers can plugin only what they need. This is extensibility.
խնդրում եմ մի քիչ հասանելի լեզվով խեսք, բան չի հասկացվում: Կիսաանգլերենախառռուսահայերենը ձեր տեսքն ավելի խելացի չի դարձնում: Շատ գովելիա ձեր քայլը, բայց ցավոք ջունիորների համար բացարձակ հասանելի չի: