portaldacalheta.pt
  • Legfontosabb
  • Ui Design
  • Mobil Tervezés
  • Folyamat És Eszközök
  • Mérnöki Menedzsment
Technológia

Milyen előnyökkel jár a Ruby on Rails? Két évtizedes programozás után használok síneket



Néha hallom, hogy az emberek panaszkodnak ügyfeleikre, mondván, hogy ők ragaszkodik valamihez a Rails használatával kapcsolatban, hogy túl sok Kool Aid volt. Ha toborzók, akkor szinte rosszul érzik magukat a gyomorban, hogy még egy Ruby on Rails ‘primadona’ fejlesztőt kell találniuk. Aztán elővesznek valami hasonlót ehhez a elképesztően tudatlanhoz összehasonlítás a Git és a PHP között hogy bebizonyítsák álláspontjukat. 'Nem is tudják, mit kérnek' - mondják.

Nekünk mint programozók , néha valóban úgy tűnik, hogy ügyfeleinknek fogalma sincs. Szeretjük eltúlozni az ilyen eseteket. Ha kicsit belegondolsz, nem tűnik helyesnek azt gondolni, hogy az az ember, aki pénzt ad nekem a dolgok felépítésére, valahogy korlátozott és „csak nem ér rá”. Valójában, Úgy gondolom, hogy az ügyfelek többsége nagyon jól tudja a lehetőségeit, és mégis még mindig úgy dönt, hogy elmegy Railsszel.



Megpróbálom elmagyarázni, hogy véleményem szerint mi teszi a Rails-t eléggé előnyössé ahhoz, hogy komolyan megfontolják őket rengeteg projekt és igény esetén.



mesterséges intelligencia és a gazdaság

A Ruby előnyei

Lehetséges, hogy senki sem tudna a Ruby előnyeiről, ha nem maga a Rails lenne. Vannak, akik szeretik kicsinyíteni Rubyt azzal, hogy azt mondják, hogy „Rubynak olyan könnyű” a „Rails nevű fényes páncélú lovagja”, és Rails nélkül a „Ruby lényegtelen lenne”. Nem tudom biztosan megmondani, hogy ez igaz-e vagy sem, de tudom, hogy hatalmas kár lenne, ha a világ kihagyna egy ilyen kiváló nyelvet. Tény: a Rails szerzője szándékosan választotta Rubyt, és a „vad” fogadása hatalmas érdeklődéssel megtérült. Amit akkor látott, azt ma sokan láthatják. Ruby valahogy lehetővé teszi a programozók számára egy speciális módszert, amelyet olyan nehéz megmagyarázni a „mosatlan tömegeknek”. Szóval, miért használjuk a Ruby on Rails-et? Ruby a programozókat boldoggá teszi, ahogyan hirdetik.



Míg a legtöbb fejlesztő egyetért abban, hogy a Ruby praktikus, egyesek úgy látják túl sok így. Aggódnak, hogy mi történhet a Ruby által megengedett összes szabadsággal, a visszaélések minden lehetőségével. Hadd illusztráljam néhány majomfoltozással:

'1'.to_i #=> 1 class String def to_i raise 'foobar' end end '1'.to_i #=> RuntimeError: foobar

Ez ilyen egyszerű: mindössze öt kódsorral vettünk egy meglévő osztályt, és felülírtuk annak viselkedését. Nohting szent - nem is vonós. Ezt a hibát könnyű lenne észrevenni, de a dolgok sokkal baljósabbá válhatnak:



class String def to_i self.to_f - 1.13 end end '2'.to_i #=> 0.8700000000000001

Csakúgy, bevezettünk egy hibát a String osztályba, amely rétegenként és összetettséggel burkolható be és fedhető el.

Szóval, gondolhat: Össze tudja-e keverni mindenki és anyjuk az értékes alkalmazásomat? Bár ez a viselkedés valóban ijesztőnek tűnik - valójában nem az. Öt év alatt Ruby segítségével , Pontosan nulla problémám volt ezzel a viselkedéssel. Lehet, hogy ellentmondásszerűnek tűnik, de akkor is, így 60 MPH-val halad az autók ellentétes irányban, csak egy vékony fehér vonal választja el az út közepén. A gyakorlatban mindkettő feltűnően jól működik.



Lehet, hogy ellentmondásszerűnek tűnik, de akkor is, így 60 MPH-val halad az autók ellentétes irányban, csak egy vékony fehér vonal választja el az út közepén. A gyakorlatban mindkettő feltűnően jól működik.

További előny, hogy a Ruby sokoldalú eszköz. Mint ilyen, éles, késszerű élekkel rendelkezik. Szeretem azt gondolni, hogy a felnőttek jól tudják kezelni a késeket - a gyermekbiztosítás a gyerekeknek is megfelel ( Csipog ). Ha gyermekként kezelik az informatikában, akkor Paul Graham áldozatává válik Blub paradoxon : szerinted jobban jársz bizonyos funkciók nélkül, amelyeket nem értesz, vagy amelyeket valaki túl veszélyesnek mondott. Természetesen ma azt kérdezzük, 'miért használjuk a Ruby on Rails' -t; így ez egy másik vita. El kell ismerni, hogy Ruby hiányol néhány olyan funkciót, amely más nyelvekben megtalálható (Lisp hmm, hmm). Összességében a Ruby közel áll a „nyelvhatalmi kontinuum” csúcsához.

Az első néhány évem Ruby-val szerény volt. Annyit tanultam, hogy mások kódját olvastam át. Néha csodálkoztam; néha dühös voltam; de végül ez az ismeret lehetővé tette, hogy a korábbinál sokkal hatékonyabban kommunikáljak a számítógépemmel. Szinte sajnálom néhány más „bürokrácia” nyelvet, amelyek miatt a karikákon kell átugrani, csak azért, hogy átugorja őket, miközben azt mondják, hogy „Csak azt csinálom, ami a legjobb az Ön számára, ez a saját érdekében!”



Pragmatizmus

Mély tiszteletben tartják a Rails DNS-ébe kötött pragmatizmust a lehető legalacsonyabb szinten. A Ruby előnyeivel együtt ez a pragmatizmus elegáns megoldásokat hoz létre és ösztönzi / inspirálja a Ruby on Rails fejlesztői közösség hogy ugyanezt tegyem. A pragmatizmust gyakran a Rails sátraként hirdetik, így ez az állítás nem új keletű, de az igazságra nemrégiben emlékeztettem, amikor egy barátom megpróbálta megmutatni, milyen 'klassz' Hibernálás tényleg. Küzdött. Éreztem a fájdalmát, mivel nem tudott számtalan opciót és konfigurációs paramétert beállítani, amelyeknek eleve a keret alapértelmezései kellett volna.

hamis hitelkártyaszámok 2017

Az életkor előrehaladtával a mesterséges bonyolultságra vonatkozó normáim egyre magasabbak lettek. Figyelembe véve, hogy 1989-ben kezdtem el gyártási kódot írni 11 évesen (kezdve egy szomszéd szomszédom projektjével.) Clipper Nyár ’87 ), Közel nulla toleranciám van a felesleges komplikációkkal szemben. A Rails pedig nagyon magas pontszámokat ért el azon a részlegen. Ez nem csak a „konfigurációval kapcsolatos egyezmény”; Az egész pragmatikus gondolkodásmódról beszélek, amelyet nagyra értékelnek és átjárnak a Rails közösségben.



Expresszivitás

A Rails a lehető legközelebb áll az angol nyelvhez (hacsak nem COBOL-t használ). Belsőként használja DSL , kiterjesztve Ruby-t a saját szemantikájával. A DSL elkészítése mindig veszélyes, mivel hatékonyan fejlesztesz egy új nyelvet. Mivel belső, nem kell külső értelmezőt használni, de bizonyos értelemben új nyelvnek tűnik. A Rails csapata jó egyensúlyt teremtett DSL-jével, ott használta, ahol van értelme, és csak ritkán túllicitálja, kiváló önkontrollt demonstrálva. Úgy gondolom, hogy bármely programozó, a Rails tapasztalatától függetlenül (és még néhány nem programozó is) megértheti ezt:

class User true acts_as_taggable acts_as_taggable_on :certificates, :expertise_kinds validates_presence_of :first_name, :last_name, :email has_many :translations has_attached_file :avatar, :styles => {:small => '240x240>'} has_attached_file :cv ...

Valójában, ha nem ismeri a Rubyt, ez furcsának tűnhet - szinte olyan, mintha nem egy programozási nyelv lenne. Ha rájössz, hogy ez csak metódus hívás zárójelek nélkül, akkor jó. Ennek ellenére a Rails DSL úgy érzi, hogy ez a speciális nyelv a követelmények leírására, bár valójában csak a Ruby kiváló szintaxisának intelligens elnevezése és velejárója.



Közösség

A Rails egy sereg elkövetővel rendelkezik, amelyek biztosítják, hogy csúcsminőségben maradjanak. Sok projekt az életkor előrehaladtával párosul, a Rails esetében mégis szikrák repülnek, amikor döntéseket kell hozni. Úgy érzi, hogy a fenntartók (még mindig) valóban törődnek és azt akarják, hogy az emberek használják a Ruby on Rails alkalmazást, és megértsék annak előnyeit.

Sok projekt az életkor előrehaladtával párosul, a Rails esetében mégis szikrák repülnek, amikor döntéseket kell hozni. Csipog

Maga a Rails alatt, mint cseresznye a tetején, Ruby áll a félelmetes csomagkezelőjével, RubyGems , összehasonlítható CPAN a csomagok számát tekintve - és figyelembe véve a CPAN korát, ez az állítás (enyhén szólva) nagyon hatásos. A Railsnek rövid kisiklása volt, amikor megpróbálta elkészíteni saját „Rails pluginjeit”. Szerencsére ez nem állt fenn, így a RubyGems továbbra is az egységes, kiváló forrás a nagyon fényes egyének által programozott kód számára.

ez a név a típus vagy más jellemzők körüli üres területre utal egy elrendezésben.

A hűvös nyelv, a gyakorlati webes keretrendszer és a kiváló közösség közötti szinergia eredményt ad Railsnek sokkal jobb, mint a részek összege.

Érettség

Rails már a tömb körül van. Hipsterfajta módon ez már nem is olyan klassz. Ez jó dolog a technológiai verem kiválasztásakor: valami bizonyítottat akar. A Rails pedig éppen ilyen. Nemrég írtunk egy darabot, amely a legkülönfélébbről beszélt Rubintolmácsok és futásidők amelyek már elérhetők.

Marketing

Tudom, tudom. Informatikai szakemberként nagyon értékelnem kellene 'komoly' dolgokat, és figyelmen kívül hagyja a 'csillám' . Lehet, hogy sekélynek tűnik, de szembe kell néznie vele:

  1. A versenyhez képest a Rails site kinéz jó .
  2. A Rails első képernyőgárdája, annak idején, egyszerűen lélegzetelállító . Lehet, hogy ma nem tűnik olyan lenyűgözőnek, de ne feledje, hogy a Java-ról csak azért tudunk, mert mindenkit annyira lángoltak egy Java kisalkalmazás a böngészőben. Végül kiderült, hogy ez nem olyan fontos, de mégis a radarra tette a Java-t. Hasonlóképpen, ez a 15 perces blogmotor-képernyőfelvétel hatalmas sikert aratott, ami sok embert izgatott.

Ez nem is a hiúságról szól; arról van szó, hogy minél több okos embert bevonzanak a vízbe a malomba. Ha figyelembe vesszük a kereteket, akkor a legjobb hely a tömegben lenni. Olyan keretrendszer kiválasztása, amelyre ezek az okos emberek összpontosítanak, egyszerűen azt jelenti, hogy sokkal több teret már lefedtek az Ön számára. És ezzel eljutok a következő pontomhoz.

(Nem) A kerék újrafeltalálása

Van egy puha pontom az apró vázakhoz. Szeretem, ha meg tudom érteni, hogy egy adott keretrendszer mit csinál és miért. Ebben az értelemben a Rails kissé dagadt, sőt időnként elsöprő.

Itt a dilemma: hányszor akarja ugyanazt a dolgot újra és újra megírni? Biztos vagyok benne, hogy némelyikét jobban át lehet írni, de időbe telik - sok időbe. Minél többet enged a Rails neked, annál kevesebbet kell aggódnod a funkcionalitás újraírása vagy újbóli megvalósítása miatt.

A Rails (ahogy mondani szokták) „akkumulátorokat tartalmaz”. Ez nem jó, ha nagyon kedveli a ritkaságot, vagy ha szükségesnek érzi, hogy átfogó ismeretekkel rendelkezzen minden működéséről. A gyakorlatban, ha elengedi félelmeit, úgy tűnik, hogy működik. A Rails ésszerű alapértelmezéseket tartalmaz szinte mindenre, amire szüksége van, és elég moduláris ahhoz, hogy elkerülje a szűk helyre szorítást.

Következtetés

Kérdezze meg újra, miért használja Ruby on Rails ? A Rails alkalmas mind a legmodernebb nyilvános weboldalakra, amelyek versenyeznek az Single Page JavaScript alkalmazásokkal, mind az összetett vállalati törzsrendszer-alkalmazásokra, amelyek általában kissé „csúnyábbnak” tűnnek (általánosabb, alacsonyabb hűségű felhasználói felülettel), de ezt kompenzálják. rengeteg bonyolult üzleti szabály és logika. Előnye, hogy sokoldalú és képes versenyezni mind a karcsú, mind a hatalmasokkal.

express js vs node js

A legtöbb általános probléma esetén a Rails rendelkezésére áll egy olyan komponens, amely szinte azonnal rendelkezésre áll, dokumentációival, amely folyamatosan meghaladja az átlagot (valahogy a Rails alapcsoportja meggyőzte a közreműködőket arról, hogy a dokumentumok írása klassz (bár mindannyian tudjuk, hogy ez nem), ami jól megírt, tömör és időtakarékos dokumentumokhoz vezet.

Ha félreteszi az egyszarvúakat és a pénteki öleléseket, egy hatalmas keretrendszerhez jut, amelyet felhasználhat mind a jövőbeli játékváltójához, mind pedig a következő közepes üzleti webhelyéhez. A csúcskategóriás drágakövek összességével pedig kéznél van egy arzenál, amely a számítógépes programozás legfényesebb ötleteit valósítja meg. Felhajtás nélkül.

Összefüggő: Időbélyeg csonkítása: Ruby on Rails ActiveRecord Tale

Deklaratív programozás valóban létezik?

Háttér

Deklaratív programozás valóban létezik?
A siker előrejelzése - Útmutató a készpénzkezeléshez

A siker előrejelzése - Útmutató a készpénzkezeléshez

Nyereségesség És Hatékonyság

Népszerű Bejegyzések
Az ételkészlet-ipar blúza: Hogyan állhat helyre a kék kötény a rossz pillanatból?
Az ételkészlet-ipar blúza: Hogyan állhat helyre a kék kötény a rossz pillanatból?
Mi az a Kubernetes? Útmutató a konténerezéshez és a telepítéshez
Mi az a Kubernetes? Útmutató a konténerezéshez és a telepítéshez
A Radical Candor keretrendszer használata a hatékony műszaki menedzsmenthez
A Radical Candor keretrendszer használata a hatékony műszaki menedzsmenthez
A távoli munka életmódjának trendjei
A távoli munka életmódjának trendjei
10 A webbiztonság leggyakoribb biztonsági rései
10 A webbiztonság leggyakoribb biztonsági rései
 
3D grafika: WebGL oktatóanyag
3D grafika: WebGL oktatóanyag
Hogyan lehet megjósolni a jövőt: A bizonytalanság hatásainak enyhítése
Hogyan lehet megjósolni a jövőt: A bizonytalanság hatásainak enyhítése
Hibrid teljesítmény: csapkodási előnyök és előnyök
Hibrid teljesítmény: csapkodási előnyök és előnyök
Yasett Acurana bolíviai fejlesztő elnyeri a hatodik ApeeScape ösztöndíjat
Yasett Acurana bolíviai fejlesztő elnyeri a hatodik ApeeScape ösztöndíjat
Szögletes alkatrészek 101 - áttekintés
Szögletes alkatrészek 101 - áttekintés
Népszerű Bejegyzések
  • az alábbi objektumok közül melyik nem szükséges a .net-ben az adatok megjelenítéséhez?
  • hogyan kell felkészülni az aws megoldás építész minősítésére
  • hogyan kell feltörni a hitelkártyát online
  • mit jelent az rtl sdr
  • A javascript typeerror nem függvény
  • számlatükör a személyes pénzügyekhez
Kategóriák
  • Ui Design
  • Mobil Tervezés
  • Folyamat És Eszközök
  • Mérnöki Menedzsment
  • © 2022 | Minden Jog Fenntartva

    portaldacalheta.pt