web开发转向移动开发 我是这样做到的
我的职业开发生涯是作为一个Web开发人员开始的,使用的是PHP。不久后,我切换到.NET生态系统,使用C#和ASP .NET MVC框架 来继续搞web开发。我一直以来创建的都是Web应用程序,直到最近……
几个月前,我开始用Android和iOS来开发移动应用程序,然后多亏Xamarin,我依然可以使用C#。我之所以写这篇文章是想分享一下我做了这个改变之后的感受。
为什么下这个决定
你可能会问,为什么我会决定从Web开发转向移动开发。因为我想要做一些新的东西以学习新的技能,虽然在web编程上我仍然有很多需要学习的地方。
我认为,移动app有一个前途光明的未来,虽然已经有很多app存在于网上的商店里。但是,新的移动设备来了,如智能手表,它们是开发人员崭新的机遇。这是一个学习如何为移动设备创建应用程序的很好契机。
更何况我目前就职的公司恰好有这个机会能够使用我最喜欢的语言(C#)来开发新的Android和iOS应用程序,那么为什么不利用这个机会呢。
新的编程模式
我知道编程的方式是会变的,这从我以前经历过的一个叫做Windows Phone的项目,一同参与开发移动应用程序时就已经得知。但我还没有准备好要做什么,并且也不认为我能做好准备。
不像网站中的应用程序有特定的生命周期,你不能只是用响应来回复请求。几乎所有我从构建Web应用程序中学到的东西都不能帮助我——范式是全新的。
在这个领域中,异步编程是强制性的,因为如果一切都运行在用户界面(UI)线程上的话,应用程序会停止。我一直都想提高自己在这方面的技能,而且也被我找到了一个实现这个目标的好方法。
分离关注点也不同,不再有Model View Controller(MVC),使用的是Model View ViewModel(MVVM)模式。即使我已经用过(在WPF和Windows Phone中),但并不是在同一水平,我仍然有很多东西需要学习。
当然,你还必须使用模拟器来测试应用程序,每次要测试的时候,你都必须建立并部署模拟器,你不能只是刷新页面来看发生的变化。反馈环很长,大多数时候都需要几分钟才行,因此调试会很慢也会很重要。
走出安乐窝
我大概在两个月前,开始工作于应用程序,并且现在仍然有很多东西需要学习。我需要处理两个我完全不曾涉足的生态系统(Android和iOS), 两 个我一无所知的框架(Xamarin和MvvmCross)和一些并不容易满足的业务需求。不过,幸运的是,至少我知道如何使用C#。
现在的我每天都在奋斗,我有很多东西需要考虑,主要的就是一些与我新的开发环境相关的“怎么做?”的问题。还有很多“如果…怎么办?”的问题:“如果网络不可用,怎么办”,“如果这个解决方案太慢,怎么办?”,“如何为客户提供最好的体验?”……
有时候,我一整天都没有办法产出任何东西,说实话,那个时候我会觉得自己真没用,是个欺世盗名之徒——既然我不能在工作上生产出任何有价值的东西,那么怎么能认为自己是一个专业的软件开发人员呢?
嗯,我觉得这种感觉就像走出自己的安乐窝,正处于学习阶段的一个峰谷中。
有峰谷的学习速率
不放弃
不过我不是唯一一个正在转换的人,我不是一个人在战斗。团队中的所有人都不得不面对相同分量的学习,高级开发人员和初级开发人员皆是如此。
现在回过头去看我这两个月的历程,我认识到,我还存在着各种不足,需要走的路还有很多,但我也学到了很多东西,比如说现在对于异步编程和那些MVVM模式的概念相对而言熟悉多了。
如果我想成为一个专业的移动开发人员,那么我依然需要继续学习,继续完成我的旅程,学习我缺乏的技能,产出符合客户期望的价值。即使我的工作时不 时 地让我苦不堪言,但是我不后悔,因为这是一个非常棒的学习机会。不管花多少时间我一定会成功。

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

Cockpit是一个面向Linux服务器的基于Web的图形界面。它主要是为了使新用户/专家用户更容易管理Linux服务器。在本文中,我们将讨论Cockpit访问模式以及如何从CockpitWebUI切换Cockpit的管理访问。内容主题:驾驶舱进入模式查找当前驾驶舱访问模式从CockpitWebUI启用Cockpit的管理访问从CockpitWebUI禁用Cockpit的管理访问结论驾驶舱进入模式驾驶舱有两种访问模式:受限访问:这是驾驶舱的默认访问模式。在这种访问模式下,您不能从驾驶舱Web用户

C++在Web开发中的优势包括速度、性能和低级访问,而限制包括学习曲线陡峭和内存管理要求。在选择Web开发语言时,开发人员应根据应用程序需求考虑C++的优势和限制。

PHP在Web开发中是属于后端。PHP是一种服务器端脚本语言,主要用于处理服务器端的逻辑,生成动态网页内容。与前端技术相比,PHP更多地用于与数据库交互、处理用户请求以及生成页面内容等后端操作。接下来通过具体的代码示例来说明PHP在后端开发中的应用。首先,我们来看一个简单的PHP代码示例,用于连接数据库并查询数据:

Go构建交互式Web应用程序,在浏览器中运行。步骤:创建Go项目和main.go文件,添加HTTP处理程序以显示消息。使用HTML和JavaScript添加表单,用于用户输入和提交。在Go应用程序中添加对POST请求的处理,接收用户消息并返回响应。使用FetchAPI发送POST请求并处理服务器响应。

C++Web开发需要掌握C++编程基础、网络协议和数据库知识。必备资源包括cppcms、Pistache等Web框架,cppdb、pqxx等数据库连接器,以及CMake、g++、Wireshark等辅助工具。通过学习实战案例,如创建简单的HTTP服务器,可以开启C++Web开发之旅。

要使用C++进行Web开发,需要使用支持C++Web应用程序开发的框架,如Boost.ASIO、Beast和cpp-netlib。开发环境中,需要安装C++编译器、文本编辑器或IDE以及Web框架。创建Web服务器,例如使用Boost.ASIO创建服务器。处理用户请求,包括解析HTTP请求、生成响应并将其发送回客户端。可以使用Beast库解析HTTP请求。最后,可以开发一个简单的Web应用程序,例如使用cpp-netlib库创建RESTAPI,实现处理HTTPGET和POST请求的端点,并使用J

为什么选择PHP作为Web开发的首选语言在当今的互联网时代,Web开发已经成为了一个非常重要的领域。而选择一种合适的编程语言对于开发者来说至关重要。在众多的编程语言中,PHP作为一种强大的Web开发语言备受开发者青睐。本文将从几个方面探讨为什么选择PHP作为Web开发的首选语言。首先,PHP的流行和普及程度是选择它的重要原因之一。PHP是一种被广泛应用的语言
