För några dagar sedan fick jag ett intressant telefonsamtal från min vän. Han ställde en fråga – “Har PHP
tappat sin betydelse i dagens programmerings värld? – Jag blev förvånad och frågade honom varför han helt plötsligt tänker på det här. Svaret på det kom i form av en graf, som visas nedan:
Vårt samtal varade i minst en timme. Vi pratade om de nuvarande trenderna i branschen och hur han kunde uppgradera sin kompetens till en professionell utvecklare. Den här bloggen är i grunden avsedd att dela mina tankar om hur en PHP-utvecklare kan göra intåg i programmerings världen och ligga före konkurrenterna.
Jag rådde honom att spendera minst två timmar, utanför arbetstid och dagligen, för att lära sig och förstå den senaste utvecklingen inom området. Personligen tycker jag att det är bäst att ta sig tid tidigt på morgonen för att få igång denna vana. Orolig för din jogging rutin? Tja, du kan alltid hitta tid för det efter jobbet.
Till att börja med, låt oss titta på två huvudpunkter i branschen för att främja din tillväxt – NODE JS och NPM.
Node JS och NPM
Enligt Wikipedia, och jag citerar, “är Node.js en öppen källkod, plattformsoberoende JavaScript-runtime-miljö för att utveckla en mängd olika verktyg och applikationer. Även om Node.js inte är ett JavaScript-ramverk är många av dess grundmoduler skrivna i JavaScript, och utvecklare kan skriva nya moduler i JavaScript. Runtime-miljön tolkar JavaScript med hjälp av Googles V8 JavaScript-motor.”
Uppenbarligen är node ett verktyg för att skriva java-skript på serversidan och NPM (Node Package Manager) är pakethanteraren för nod, mer som en kompositör i PHP-domänen. Jag listar nedan några av fördelarna med node js-plattformen:
- Asynkron – (snabbare)
- Javascript (Samma språk på server- och klientsidan)
- Verktyg (bra verktyg som NPM, Mongo DB, Sails JS, Meteor JS )
Det är tillrådligt att bekanta dig i detalj med fördelarna med att använda node js genom att göra en snabb Google-sökning. De flesta PHP-utvecklare är bekanta med ramverk som Codeigniter, Laravel, Cake php och ZF för att nämna några. På samma sätt har node js-plattformen några ramverk att arbeta med. De är:
- express.js http://expressjs.com/
- sailsjs http://sailsjs.org/
- koajs http://koajs.com/
Express.js är ett väldigt enkelt och lättanvänt ramverk, men personligen föredrar jag sails.js eftersom det fungerar på ett liknande sätt som Codeigniter och Laravel. Jag skulle inte vilja kommentera koa.js eftersom jag inte är bekant med ramverket, men är något som jag ska titta närmare på snart.
Databas
Även om du har en god förståelse för MySql-plattformen måste man förstå att databas konceptet har genomgått en stor förändring i sin operativa kapacitet för att rymma filstrukturer med stora volymer. Tidigare var majoriteten av den genererade databasen baserad på sql-konceptet, men det finns andra utmanare som Mongo DB, Couch DB och Hadoop. Jag rekommenderar starkt att du släpper din sql-komfortzon och börjar lära dig nya databashanterare direkt. Glöm inte att MySql fortfarande kan användas för små och medelstora projekt och kan fås att fungera tillsammans med Mongo DB.
ES2015 (känd som ES6)
Ett annat koncept att veta mer om är ES2015. Det är den senaste versionen av javascript. Observera att du kan stöta på problem med webbläsarkompatibilitet när du använder verktyget. ES2015 är så flexibel att du kan använda Babel eller TypeScript synkroniserat när det händer. För att veta mer föreslår jag att du går igenom länken nedan:
Resurs-: https://www.codeschool.com/courses/es2015-the-shape-of-javascript-to-come
Front End Frame Works
Man kan hitta många front end-ramverk, men poängen är att alla inte kan läras in i en ögonblick. Jag skulle dock vilja peka på några alternativ som jag tror, framöver, skulle vara trenden i branschen.
React JS
Reactjs är ett gränssnitt bibliotek utvecklat av Facebook. Den följer en fantastisk komponentmetod för frontend-utveckling. Jag tror att React har en fantastisk framtid och det är väldigt lätt att lära sig. Jag kan försäkra dig om att om du är väl bekant med React så kan du enkelt använda React Native för hybrid applikationsutveckling medan aframe-react kan användas för utveckling av virtuell verklighet applikationer. Lär dig mer genom att klicka på länkarna nedan:
Resurs 1-: https://www.codeschool.com/courses/powering-up-with-react
Resurs 2-: http://www.webduratech.com/blog/reactjs-tutorial-for-beginners/
Angular 2
Angular är för närvarande modeordet i branschen. Om du inte har haft en chans att lära dig Angular 1, föreslår jag att du går direkt till Angular 2 eftersom den använder samma drifts komponenter. Det är ett av de mest omfattande och fullfjädrade MV*-ramverken som är tillgängliga för närvarande och har utvecklats av Google.
Även om Angular och React är nyckeln trenderna i branschen, skulle det vara klokt att investera din tid i att lära dig Emberjs och Vue Js också.
Övrigt
Alternativen att lära sig är i princip oändliga. Det är därför det skulle vara en orättvisa om jag misslyckas med att nämna, och även ber er alla, att titta på Gulp, Grunt och Yomen frontends verktyg för att ta steget mot att bli en fullstack-utvecklare.
Hybrid Apputveckling Hybrid Apputveckling
har nyckeln till framtiden och det är absolut nödvändigt att du lär dig det just nu. Det finns tre viktiga verktyg för att utveckla hybrid applikationer – Iconic, Meteor Js och React Native. Mer information om de tre kan hittas genom att gå till länkarna nedan:
- IONIC – http://ionicframework.com/ – Angular
- Meteor JS – https://www.meteor.com/ – ES 2015 eller React JS
- React Native – https://facebook.github.io/react-native/ – React JS
Jag föreslår också att du går igenom en blogg som jag skrev för några månader sedan om vikten av utveckling av hybridappar – http://www.webduratech.com/blog/what-are-hybrid-apps-how-it-can-be-helpful-for-small-business-owners/
Virtual Reality-appar
Virtual Reality tar snabbt fart som en av de viktigaste begreppen i programmerings världen. Microsoft och Facebook har redan introducerat sina VR-produkter för massorna. Eftersom det är ett nytt koncept kommer effektiv inlärning av associerade verktyg i VR-domänen att göra dig till en toppklass utvecklad med fantastisk lön.
Mer om VR finns här – https://github.com/ngokevin/aframe-react
Det finns inget slut på lärandet, speciellt för oss programmerare. Vi måste ständigt hålla oss uppdaterade med alla de senaste trenderna i branschen för att främja våra chanser att göra skillnad på området.
Håll ett öppet sinne och anamma förändringarna i branschen. Tänk alltid på att självlärande är det enda sättet att säkerställa att du inte går vilse bland folkmassan.
Följ mig kl https://twitter.com/shemeermali för allt det senaste från programmeringsvärlden. Glad kodning alla!