Showing posts with label frameworks. Show all posts
Showing posts with label frameworks. Show all posts

2016-11-23

PhoneGap or Adobe PhoneGap, or Apache Cordova?

PhoneGap hay Adobe PhoneGap hay Apache Cordova? Gọi thế nào cho đúng, và nó khác gì nhau?

Khi nói chuyện vẫn không ít người nhầm, có người còn hoàn toàn không biết mối quan hệ giữa những cái tên nay. Thực tế còn có nhiều người giải thích như vậy:

"PhoneGap is a distribution of Apache Cordova".

Nhưng vậy cũng là không đủ nghĩa mà còn rất nhập nhằng. Mình đã xài PhoneGap từ những ngày đầu nên nghĩ phải viết một vài dòng giải thích (có thể xem thêm trên Wikipedia và bài này Which to Use: Cordova or PhoneGap?, những giải thích sau dựa trên sườn của nó).

Trên website http://phonegap.com là website chính thức của Adobe PhoneGap định nghĩa như sau:

"From the team behind Apache Cordova, the Adobe PhoneGap framework is an open source distribution of Cordova — providing the advantage of technology created by a diverse team of pros along with a robust developer community — plus access to the PhoneGap toolset, so you can get to mobile faster."

Lưu ý ở đây là Adobe PhoneGap chứ không phải PhoneGap mới là distribution của Cordova.

PhoneGap ban đầu là tên của một dự án open source do công ty Nitobi tạo ra và quản lý. Nó được đánh giá cao bởi các tổ chức và công ty phát triển sản phẩm, trong đó có cả những cty lớn như IBM. Một số công ty còn tham gia vào project này như Google.

Năm 2011, Adobe mua lại Nitobi. Tuy nhiên, ngay trước khi bị/được mua, thì Nitobi đã tặng PhoneGap cho Apache Software Foundation. Lý do nêu ra là để bảo vệ quyền quản lý (stewardship) và tính lâu dài của dự án (biết đâu bị giết luôn). 

Sau khi được tặng Apache đổi tên là Apache Callback. Nhưng bị cho rằng quá chung chung nên tên này được đổi ngay sau đó thành Apache DeviceReady (do event hay xài deviceready). Tuy nhiên cái tên này cũng không thành công gì cả. Cuối cùng Apache đổi tên PhoneGap thành Apache Cordova (từ tên đường Nitobi đặt trụ sở chính mà ra, theo thông tin bài viết mình chưa kiểm chứng nhưng chắc là đúng :D).

Tại thời điểm này (version 1.4), Apache Cordova hay PhoneGap chỉ là hai cái tên khác nhau của cùng một thứ, không có sự khác biệt gì.

Sau khi Nitobi đã chung 1 nhà với Adobe thì team này (giờ là một phần của Adobe) đã tạo một phân phối (distribution) và đặt tên bằng cách lấy lại tên cũ + thêm Adobe đằng trước gọi là Adobe PhoneGap.

Hiện trạng đó duy trì cho đến ngày nay. Tức là mỗi khi Apache Cordova update thì Adobe (team Nitobi cũ) lại phát hành distribution dựa trên Apache Cordova (với những tính năng tăng cường từ Adobe) 

Kết luận:

Adobe PhoneGap là một phân phối do Adobe phát triển trên Apache Cordova, với một số tính năng của Adobe.

Còn PhoneGap, cũ rồi thôi quên nó đi :P.

http://www.informit.com/articles/article.aspx?p=2478076


2016-04-21

ASP.NET MVC5 - Is MVCContrib dead?

MVCContrib 

Lâu ngày đụng lại ASP.NET, từ hồi MVC3 đến giờ chưa ngó qua. Coi bộ .NET mình quá lạc hậu rồi. Có 1 phần source cũ copy qua xài MVCContrib thì bị lỗi. Lý do MvcContrib.Mvc5 package xài Mvc4Futures không rõ là vì sao nhưng có lẽ do ko maintain (từ 2013) nên đụng với MVC4.

https://www.nuget.org/packages/MvcContrib.Mvc5/

Inheritance security rules violated while overriding member: ‘Microsoft.Web.Mvc.CreditCardAttribute.GetClientValidationRules(System.Web.Mvc.ModelMetadata, System.Web.Mvc.ControllerContext)’. Security accessibility of the overriding method must match the security accessibility of the method being overriden.

Xem ra thì thấy vẫn có người sử dụng http://nugetmusthaves.com/Package/MvcContrib.Mvc5

Thật ra project thường cũng chỉ một số phần nhỏ trong MVCContrib . Cách tốt nhất là phần nào cần xài thì copy từ source về project

Xem
asp.net mvc - Is MVCContrib dead? - Stack Overflow

Announcing aspnet.mvc.grid

2012-02-29

Sh#rp-Lite: error 'At least one ISessionFactory has not been registered with IoC'

Hôm nay ngồi coi lại Sharp-Lite chút, bữa có download về nhưng chỉ xem qua. Lần này mình tính evaluate xem có hợp lý hơn cái framework đang xài hay có gì hay hơn  so với S#arp Architecture không.

Lần đầu build không sao, lần sau copy mấy thứ từ project cũ qua, thay StructureMap bằng Windsor tự nhiên gặp lỗi nhảm shit 'At least one ISessionFactory has not been registered with IoC'. Trong khi debug rõ ràng đã register rồi và code cũng chẳng đổi gì để đến nỗi sai. Search 1 vòng trên NET chỉ có 1 chỗ
Google Groups › S#arp Lite › Error while running the sample application. Mới kiểm tra lại, thiệt bó tay Init project reference MVC 4 'C:\Program Files\Microsoft ASP.NET\ASP.NET MVC 4\Assemblies\System.Web.Mvc.dll', Web project reference MVC 3 'C:\Program Files\Microsoft ASP.NET\ASP.NET MVC 3\Assemblies\System.Web.Mvc.dll'.

>>> bị lỗi reference tới 2 assembly khác nhau