A kisvágás tanulmányozása javíthatja a programozási készségeket

A kisvágás tanulmányozása javíthatja a programozási készségeket

A Smalltalk-ot általában egy régi, haldokló nyelvnek tekintik - régiségeket egy elavult korszakból. Nincs semmi messze az igazságtól.

A Smalltalk még mindig nagyon fontos. Ez egy kitűnő nyelv az olyan szakemberek számára, akik nem rendelkeznek műszaki oktatással. Ez egy kiváló prototípus-nyelv az induló vállalkozások számára. Ez egy erős ipari nyelv, amelyet mind a nagyvállalatok, mind a kisvállalkozások használnak szerte a világon. Jó oka van annak, hogy fontolóra vegyük a modern Smalltalk használatát, mégpedig a közelmúltban a képességek javítása érdekében.

Nem kell használni Smalltalk programozási ipari, hanem megpróbálja írni valamit, és hallgatni az érzéseidet. Meg kell ismernie kell, mert a végrehajtása a Smalltalk objektum-orientált paradigma olyan gyönyörű, hogy befolyásolja egy egész generáció OO nyelvek, mint az Objective-C, Python, Ruby, CLOS, PHP 5, Perl 6 Erlang, Groovy, Scala, Dart , Swift és még sokan mások.

A Smalltalk tanulmányozásakor meg fogod érteni, hogy a modern nyelvek mindezen hasznos funkciói valósággá váltak. A Smalltalk tanulás szintén előnyös lehet a kollégák között, és ez is nagyszerű eszköz lehet a programozás tanításához.

Mit adott nekünk a Smalltalk?

A Smalltalk hozzájárulása a szoftveriparhoz hatalmas. Tekintse meg a bemutatott jellemzők és technológiák listáját:

De vajon hogyan tanít a Learningt Smalltalk a legjobb fejlesztővé?

A Smalltalk számos funkcióval rendelkezik, amelyek messze megelőzik az idejüket:

  • Képalapú megőrzés
  • Tárgyak: minden objektum, és az objektumok csak üzeneteket cserélnek (a leginkább "tiszta" OOP és az egyik legkorábbi)
  • Élő programozás
  • Speciális hibakeresési módszerek, például a kód megváltoztatása menet közben
  • Egyszerű, uncluttered interface IDE
  • Objektumorientált nyelvek (DSL): az egyetlen módja a Smalltalk működésének, ezért a programozóknak a problémára kell összpontosítaniuk. használja a nyelv és a jelölés, amely természetes a probléma

És vannak még néhány funkció. amelyek a Smalltalk különlegesvé teszik.

Lényegében a Smalltalk mint produktív nyelv és tanulási eszköz legfontosabb előnye, hogy a legtöbb, de nem minden, kognitív stresszt eltávolítja az ipari OO-nyelveken, mint a Java. A Smalltalk nem tartalmaz szintaktikus szemetet vagy zavaró funkciókat. Ő udvariasan utat ad neked, hogy összpontosítson minden figyelmét a problémára vagy az alkalmazásra. Nem az, hogy a Java rossz nyelv, mert összetettebb (és 30 karakteres osztálynevekkel rendelkezik); Arról beszélek, hogy a nyelv elsajátítása, amely nem terheli az extra OO funkciókat, valójában a legjobban a Java programozóvá teheti, ha megérted az OOP koncepciókat más nézőpontból.

A kognitív stressz kiküszöbölése sok nyelv - például Python, Ruby, Elixir, Elm és Go célpontja. Még akkor is, ha nem érzed. a stressz. Gyakran mondják, hogy a Smalltalk vagy a Python programozása hasonló a Zenhez; Tudata egyszerűen és természetesen áramlik a feladattal együtt. Ez a nyelvi egyszerűség szépsége és értéke, a Smalltalk pedig teljesen.

A Smalltalkban az OOP koncepciója az osztályok és módszerek alapfogalmainak, a metaklaszok és a reflexiónak, és ami a legfontosabb, az üzenetek átadása. A Smalltalk az objektum tisztaságának és következetességének köszönhetően mélyreható megértést nyújthat az objektumorientált programozásnak és a maximális hatékonysággal történő használatának.

A Smalltalk egyszerűsége ideális programozási programot kínál, különösen akkor, ha nem rendelkezik technikai képzéssel. A nyelv és eszközök egyszerűsége lehetővé teszi, hogy erőfeszítéseit a tanítási programozási technikákra összpontosítsa. de nem nyelvi konstrukciók és formalizmus.

Az "élő" hibakereső jelentősen csökkenti a szerkesztési ciklust - a tesztelést - a hibakeresést.

Hogyan működik a Smalltalk? A programozás megközelítésének képén alapul

A Smalltalk sikerének legfőbb oka a képen alapuló szoftverek készítése. A kép egy pillanatkép a memóriából, amely tartalmazza a futó alkalmazás összes objektumát. Összefoglalja a program végrehajtásának teljes állapotát. A kép menthető a lemezre, és később pontosan ott folytatódik, ahonnan abbahagyta!

"A Smalltalk kép" kissé szokatlannak tűnhet, de valójában nagyon hasonlít az IT-ben ma is széles körben alkalmazott rendszerhez: a rendszerképek az OS virtualizációban, például a VMware és a VirtualBox rendszerekben. Ne felejtsük el, hogy a Smalltalk eredetileg autonóm operációs rendszer volt, amelyet a Xerox PARC-ben hoztak létre az 1970-es években.

A Smalltalk kép hasonló a webes alkalmazás DOM (Document Object Model) eleméhez. Megjegyezzük, hogy a webes alkalmazás lényegében egy operációs rendszer, amely egy webböngészőben van elszigetelve, és nincs közvetlen hozzáférése a gazda fájlrendszeréhez és más erőforrásokhoz. A webböngésző bezárásakor a dinamikus weboldal állapotát el lehet menteni vagy gyorsítótárba helyezni, és a böngésző következő újraindításakor a webhely visszaállítható a böngészőbe (korlátozásokkal).

Még a táblázat is nagyon közel áll a kép fogalmához. Összefoglalja az összes szükséges információt. Nem fér hozzá a rendszer erőforrásaihoz. Menthető és helyreállítható. És tudnia kell, hogy a táblázatokat még mindig használják komplex modellek és alkalmazások fejlesztésére a saját nyelvükön.

Minden a Smalltalkban egy objektum

Kivételek nélkül: minden tárgy. Nincsenek primitív adattípusok. Nincs ilyen irányító struktúra, mint a választás és az iteráció! Minden a Smalltalkban történik üzenetek küldésével. Ez teszi a Smalltalk-ot olyan egyszerű, elegáns és könnyen elsajátíthatóvá. Ez teszi a nyelvet annyira szintaktikailag.

Például a következő kódfájl kiterjeszti a számosztályt egy nem rekurzív faktoriális művelet támogatására:

Itt, haTrue: ez a legfontosabb üzenet, amit a kifejezés (én) visszaküldött logikai objektumhoz küld <2). Аргументом для сообщения является блок кода (обозначенный квадратными скобками). На самом деле ifTrue: это первая часть сообщения с двумя аргументами, вторая часть ifFalse :.

Egy új üzenetet küldünk a OrderedCollection osztályba új gyűjtemény létrehozása céljából. A printNl üzenetet elküldi az eredménynek (az objektumnak), amely a my_factorial üzenetet a 7. számra küldi. Mindez nagyon hasonlít a természetes nyelvhez!

Reflexió a Smalltalkban

A Smalltalkban kifejtett reflexió különösen értékes mechanizmusként saját struktúrájának és számításainak ellenőrzésére a futásidőben. Ez egy nagyon erős mechanizmus, amely lehetővé teszi, hogy a programok új osztályokkal és módszerekkel bővüljenek, vagy felteszi a kérdést: "Ki küldte ezt az üzenetet nekem?"

A visszaverődés egy hatékony hibaelhárítási módszert alkalmaz. Ha egy objektum egy olyan üzenetet kap, amelyet nem hajt végre, akkor a következő üzenet érkezik: nem jelenik meg: és az eredeti üzenet kódja. Sok dolog van, amit a program megtehet az üzenetgel. beleértve a funkcionalitás bővítését!

A kép és a reflexió koncepciója lehetővé teszi a Smalltalk számára, hogy eltávolítsa az alkalmazás és az IDE közötti határt. Minden, ami az alkalmazás fejlesztéséhez, hibakereséséhez és futtatásához szükséges. Az alkalmazási környezetet soha nem szabad hagyni. Ez egy teljesen holisztikus megközelítés a szoftverfejlesztéshez, ami egyre inkább Zen-szerűvé és produktívabbá teszi.

A Smalltalk újjászületése

Az elmúlt 15 év a Smalltalk világának fejlődésével vonzóbbá tette a nyelvet.

Tavaly a Dolphin Smalltalk, akit sokan szerettek, nyílt projektgé vált, ami még egy remek lehetőséget kínál a Smalltalk rajongóknak. A Dolphin Smalltalk-ot gyakran dicsérik az IDE egyik legjobb implementációjának.

Smalltalk Heritage: Program örömmel

Ha a modern szoftver fejlesztési eszközök, mint például a JVM, Eclipse, áramkör, „élő programozás», MVC, TDD, VMware, és még egy egyszerű webes alkalmazás, emlékszik az eredete Smalltalk és próbálja tekintetben, hogy mit csinálsz . Légy hálás a nyelveket használják, függetlenül attól, hogy az Objective-C, Python, Ruby, Groovy, Scala, Dart, vagy Swift.

Együttműködik azzal a nyelvvel, amelyből mindezek a csodálatos funkciók és technológiák megtörténtek, egyedülálló lehetőséget biztosít a tudás, a mentális élettartam és a termelékenység jelentős fejlesztésére szoftverfejlesztőként. Az "élvezet" szót nem mindig használják a szoftverfejlesztés során folytatott beszélgetésekben, de úgy gondolom, hogy a Smalltalk és az OO kollégái alacsonyabb kognitív akadályt és egyszerű programozást biztosítanak, ami a szoftverfejlesztés élvezetét nyújtja.