官术网_书友最值得收藏!

Quality in cross-development

Some development terms help developers create robust, maintainable, high-quality code when developing for multiple platforms. These code descriptors help development teams identify architectural problems, software issues and random errors.

Reusability

"How much of the code can be reused throughout the project?"

Reusability is one of the key quality identifiers in cross-platform development projects. Xamarin, especially with the release of Xamarin.Forms, has provided developers with extensive resources to create platform-agnostic components that can decrease redundancy and reduce developer hours in complex projects. Code quality matrices generated by Visual Studio and unit test coverage results can convert this descriptor into a quantifiable measure.

Abstraction

"How much do the shared components know about the platform?"

It is almost unavoidable not to include platform-specific bits in cross-platform solutions. The level that these modules are abstracted to increases the robustness of the shared components and is closely related to how loosely the implemented logic is coupled with the underlying platform. In this way, the shared components can be tested easily with mock or fake libraries without having to create platform-specific test harnesses. Unit test code coverage results help determine the testability of the application.

Loose-coupling

"How easy is it to transpose the project into another platform?"

On top of the platform-specific abstracted implementation, an autonomous shared implementation layer creates flexible solutions which can easily be adapted to other platforms. Reducing the dependencies of the shared logic to the underlying platform not only inherently increases the reusability but also the agility of the development projects. The number of conditional compilation blocks or if or else loops for the underlying platform on shared projects identifies the amount of code executed according to the platform.

Nativity

"How much does your application blend into the platform?"

Even though the ultimate goal while developing with Xamarin is to create an application that can be easily compiled onto multiple targets, the applications created with Xamarin should look, feel and behave as if they were designed for that specific platform. The UI paradigms and user interaction mechanisms of each platform should be respected while creating a common foundation. Nativity is more of a nominal and subjective measure when compared to the aforementioned code descriptors.

主站蜘蛛池模板: 晋宁县| 阿克陶县| 六枝特区| 文水县| 鄂托克前旗| 靖江市| 米泉市| 靖安县| 金阳县| 修水县| 青河县| 娄底市| 晋中市| 达日县| 郯城县| 丰顺县| 宕昌县| 湾仔区| 大丰市| 文登市| 三穗县| 晴隆县| 唐海县| 台东县| 原平市| 乌兰察布市| 固镇县| 义乌市| 和林格尔县| 方正县| 凉城县| 喀喇| 思南县| 东源县| 娄烦县| 江北区| 长葛市| 虹口区| 时尚| 小金县| 塔河县|