මේ වෙනකොට Web Development කරන කෙනෙක් නම් Angular ගැන අහලා නැති වෙන්න බැහැ. පහුගිය කාලේ ඉහල ජනප්රියත්වයක් තිබුණු web framework එකක් නිසාත්, Google product එකක් නිසාත් මේ තරමට ප්රසිද්ධ වෙලා තියනවා Angular, ReactJS ගැන කලින් ලිව්ව article එක මෙතනින් බලන්න පුළුවන්.
අද වෙනකොට Angular සහ React විවිධ features එක්ක develop වෙලා තියනවා. අලුත් වෙනස්කම් ගොඩක් එක්ක Angular 2 release කළේ මෑත කාලේදි. මේ article එකේ විස්තර වෙන්නේ Angular 2 සහ React වල opinionated comparison එකක්.
Angular වල 1st version එක release කරලා අවුරුදු කීපයකට පස්සේ, ඒ කියන්නේ අවුරුදු 4කට 5කට පස්සේ build වෙලා තිබුණු community එකත් එක්ක හැම තැනින්ම අහන්න ලැබුනේ ‘It is good to work with Angular’, ‘Angular works like a charm’ වගේ දේවල්. ඒ කාලේ Angular වල තිබුණු features වලට තිබුණු ඉහල ඉල්ලුමත් මේකට හේතුවක් වෙන්න ඇති.
Angular වල 1st version එකේ තිබුණු අඩුපාඩු සහ අලුත් දේවල් එකතු කරා Angular 2 release කරනවා, නමුත් React වල ආගමනයත් එක්ක සැලකිය යුතු developer count එකක් React වලට shift වෙන්න පටන් ගත්තා. ඒ React වල තිබුණු easy development, unidirectional data flow, Virtual DOM වගේ දේවල් නිසා.
2016දි Angular 2 වල Alpha version එකක් release වෙනවා, මේ එක්කම web development field එකේ හැම තැනින්ම වගේ අදහස් එන්න පටන් ගන්නවා. මේ දෙක ගැනම මධ්යස්ථව වගේම Angular 2 වල features ගැන consider නොකරම Angular වල 1st version එක consider කරලා React හොඳයි කියන මතයකුත් දකින්න ලැබුණා.
React සහ Angular comparison එක බොහෝ දුරට සාධාරණ දෙයක් නෙමෙයි. Angular කියන්නේ framework එකක්, ඒ වගේම React library එකක්. නමුත් මේ දෙකම front-end UI designing technologies. හැම තැනින්ම වගේ React ගැන කියවුණත් මේ දෙකම අද වෙනකොට web development ගැන කතා කරද්දී අමතක කරන්න බැහැ. මේ නිසා මේ දෙකේම ගතිගුණ, හොඳ සහ නරක ගැන හොයලා බලන එක වැදගත් වෙනවා.
මුලින්ම බලමු Google trends ගැන.
මේ විදියේ ඉල්ලුමක් React වලට තිබුනත් Job Posting වලදී Angular ඉදිරියෙන් ඉන්නවා. මේකට හේතුව Angular කලින් release වුන නිසා කියන්න බැහැ, මොකද මේ වෙනකොටත් React release කරලා අවුරුදු 3කට වැඩි කාලයක් වෙන නිසා.
Angular2 සහ React basics
Source: techmagic.co
Ecmascript කියන්නේ මෑත කාලයේ විශාල ජනප්රියත්වයක් ලැබුණු scripting language එකක්. React වල ජනප්රියත්වයට එකත් හේතුවක් වෙන්න පුළුවන්. නමුත් තවමත් Angular වල active contributor count එක නිසා developersලා අතර ජනප්රියත්වය අඩුවක් නැතිව භාවිතා වෙනවා.
Angular2 සහ React features
Source: techmagic.co
Angular2 සහ React ගැන තව දුරටත්
Source: rubygarage.org
Angular 2 වල වාසි
- Angular 2 වලදී Component-based structure එකක් භාවිත කරන්නේ. මේ නිසාවෙන් program එකේ modularity feature එක වැඩි වෙනවා වගේම readability, maintainability වැඩි වෙනවා.
- Angular2 වලදී Typescript Based කරගෙන develop කරලා තියන නිසා ECMAScript standards based නිසා module landing වලට support කරනවා.
- Testing, browser rendering, animation සහ accessibility ගැන සලකනකොට Angular2 වලදී සැලකිය යුතු performance improvement එකක් දකින්න පුළුවන්.
- Angular2, cross-platform වලට support කරනවා වගේම Linux, Windows සහ Mac වල native OS APIs වලටත් support කරනවා.
- Angular2 CLI එකෙන් application development process එක තවත් පහසු කරනවා වගේම best practices follow කරන්නත් උදව් වෙනවා.
React වල වාසි
- මුලින්ම නම් කරන්න පුළුවන් කලිනුත් සඳහන් කරපු Virtual DOM එක. React වල performance improvement එකට ප්රධානම හේතුවක් වෙන්නේ මේක.
- Client side එකේ වගේම server side එකෙත් render කිරීමේ හැකියාව
- Components සහ Flux Architecture එකෙන් code readability එක improve කිරීම
- Angular, Ember ඇතුළු අනිත් Frameworks වලටත් support කිරීම
Angular2 භාවිතා කරන්නේ,
- PayPal
- Upwork
- The Guardian
- Nike
- HBO
- Sony
- General Motors
සම්පුර්ණ විස්තර මෙතනින් බලන්න පුළුවන් — https://www.madewithangular.com
React භාවිත කරන්නේ,
- Alipay
- Airbnb
- Dropbox
- Netflix
සම්පුර්ණ විස්තර මෙතනින් බලන්න පුළුවන් — https://github.com/facebook/react/wiki/sites-using-react
React සහ Angular දෙකම මේ වෙනකොට සැහෙන්න improved technologies. ඒ වගේම development වලදී නිතර භාවිතා කරනවා. Angular වැඩිපුර ගැලපෙන්නේ declarative solutions වලට. නමුත් React වලදී තියන coding free එක සහ easy development කියන දේ නම් ටිකක් අඩුයි.
Angular release කරලා අවුරුදු 7ක් වගේ කාලයක් නිසා ලොකු community එකක් තිබුනත් React පොඩි කාලෙකින් community එක build කරගන්නවා. මේ වෙනකොට Angular 4 release කරලා තිබුනත් තාම වැඩි කාලයක් නැති නිසා Angular 2 තව කාලයක් development වලදී භාවිත වෙයි.
React සහ Angular වලින් හොඳම එක select කරනවට වැඩිය solution එකේ goals, features, time frame සහ team skills based කරගෙන ගැලපෙනම එක select කරන එක තමයි recommended approach එක වෙන්නේ.
කාලයක් තිස්සේ බලන් හිටපු Article එකක් අයියා ….
😁👍
Ado patta machan
Thanks machan!!
A very informative article..Keep up the good work (y) 🙂
Thank you Himashi 😀
[…] සම්පුර්ණ ලිපිය බලන්න. […]
Danushka you articale is good its really encourage to sinhala readers.
One small correction we cant say angular js 2 it should angular 2 becz angular 2 isnot java script
Thank you for showing the mistake. I fixed it. 😀
This essentially is a war between Google and FB. Good to see the global development community gets something out of it 🙂
Yeah!! Both are giants on the web. I hope there are more to come ’cause both Angular & react are on-going development projects.
patta Article eka. (y) .