一名程序员的杂想

简介:    Mono作为一个跨平台的.Net运行环境,它最大的优点就在于它的跨平台性,Mono 项目不仅可以运行于Windows 系统上,还可以运行于Linux,FreeBSD,Unix,Mac OS X 和Solaris等操作系统上。
   Mono作为一个跨平台的.Net运行环境,它最大的优点就在于它的跨平台性,Mono 项目不仅可以运行于Windows 系统上,还可以运行于Linux,FreeBSD,Unix,Mac OS X 和Solaris等操作系统上。Mono支持的语言,有javascript,C#和一个不怎么为人所知的脚本语言,绝大多数都是使用C#开发,这也给我们学C#的人一个不错的发展平台。经过几天的摸索,突然对Unity3D感兴趣,之前一直好奇,像网游,比如魔兽,红警那些具有很强立体感的游戏,是用什么技术开发的,现在了解到原来是Unity3D技术,它不仅仅能够开发网络游戏,还可以开发编译成各个移动终端平台上的游戏,比如苹果,安卓等等移动设备上的游戏软件,比如现在大家玩的比较火的神庙逃亡的游戏,也就是用Unity3D开发的游戏,我们C#程序员可以将写的项目运行在mono上,这样就可以开发各种平台上的软件,正因为它的跨平台性和便利性,也使得Unity3D技术现在非常火,就了解到一个刚出道的学员,还未转正就8.5K,一转正就是五位数的薪资。就整体而言,服务器端开发薪资高于软件开发,而游戏开发高于服务器端开发,因为游戏开发不仅仅需要客户端的编程技术,而且需要较强的用户体检,并且还要熟悉服务器端的技术,如果一个就C#或者javascript编程基本功还不是很强的人,在学习Unity3D开发时候,会遇到种种困难,是对于我们初学者而言,无疑还是一种挑战。Unity3D开发游戏技术毫无疑问无疑是一种非常实用的技术,它与传统的用C/C++作为开发语言的Directx和OpenGL来开发游戏相比具有明显的优势就在于便捷和可以编译生成各种平台的软件,比如Flash,安卓,苹果,windows phone,win8等等。还有就针对哪种语言好与不好的话题,无疑是计算机初学者热议的话题,就个人而言,语言相差不太大,我认为就各个计算机语言而言,没有多大的语言难度的区分,有人说VB比C容易,或者是VFP比较容易,其他的数据库难,又或者是C#和java没有C/C++难,但我不同意这些说法,C#和java非常相似,其中一中语言对应的技术另外一种语言也具有与之相对应的技术,C#和java是对C/C++的一个封装,用他们来开发软件更加便捷,如果仔细看其实他们底层还是C/C++,C/C++适合开发与硬件相结合的项目,而C#和java更适合那种应用型的软件的开发,我个人以为。有人说C#简单,但我不这么认为,因为说简单的人,那是因为你学的还不够多,还没接触到更深入的底层的技术,所谓学到的越多,不知道的也越多。有的人说VB简单,相比较C而言,因为只需要拖拖控件一个漂亮的界面就拖出来了,有这样思想的人不能算是高手,顶多也就是只能算一个只会拖拖控件的菜鸟而已。我认为初学者学习编程不在于语言本身,主要的还是对编程逻辑和思维的培养,就软件设计而言,最典型的服务器端开发有3P技术(asp.net,jap,php),但无论用哪种技术开发,当你掌握其中的一种,继而想转像别的技术开发相对而言就易如反掌了,只需要稍微了解一些语言和语法的差异就行了,软件开发也不在于用哪种技术本身,重要的还是建模,和设计前系统架构的设计。C#和java是一种非常便捷高度封装的语言,开发环境给我们提供了各种可用的类库,非常方便,但是我们不能仅仅满足会那么一点点应用,重要的起码要研究研究他们的源码,竟而最中能自己开发类库和接口来调用,这才是进步。我目前正在尝试用Unity3D技术开发一个简单的三维的坦克游戏,也算是一个小小的摸索吧。当能弄出来也算是一个非常有意思的事情!
相关文章
|
Rust 算法 数据安全/隐私保护
【密码学】一文读懂XTEA加密
本篇文章,我们来看一下上一次讲过的TEA加密算法的一个升级版XTEA, 相比于TEA, XTEA的安全性显然是更高的,其中的过程要比TEA稍微复杂一点点。
1480 0
【密码学】一文读懂XTEA加密
|
6月前
|
人工智能 搜索推荐
「社会实验室」成真!SocioVerse:复旦联合小红书开源社会模拟世界模型,用AI预演群体行为
SocioVerse是由复旦大学联合小红书等机构开源的社会模拟框架,基于大语言模型和千万级真实用户数据构建,能精准模拟群体行为并预测社会事件演化趋势。
364 2
「社会实验室」成真!SocioVerse:复旦联合小红书开源社会模拟世界模型,用AI预演群体行为
|
监控 算法 Java
Java中的内存管理:理解Garbage Collection机制
本文将深入探讨Java编程语言中的内存管理,特别是垃圾回收(Garbage Collection, GC)机制。我们将从基础概念开始,逐步解析垃圾回收的工作原理、不同类型的垃圾回收器以及它们在实际项目中的应用。通过实际案例,读者将能更好地理解Java应用的性能调优技巧及最佳实践。
219 27
|
12月前
|
开发框架 .NET API
Windows Forms应用程序中集成一个ASP.NET API服务
Windows Forms应用程序中集成一个ASP.NET API服务
204 9
|
12月前
|
网络协议 算法 数据格式
【TCP/IP】UDP协议数据格式和报文格式
【TCP/IP】UDP协议数据格式和报文格式
684 3
|
Ubuntu Linux vr&ar
IM跨平台技术学习(十二):万字长文详解QQ Linux端实时音视频背后的跨平台实践
本文详细记录了新版QQ音视频通话在 Linux 平台适配开发过程中的技术方案与实现细节,希望能帮助大家理解在 Linux 平台从 0 到 1 实现音视频通话能力的过程。
456 2
|
10月前
|
数据库
脏读、幻读、不可重复读的定义?
脏读、不可重复读和幻读是数据库事务处理中的三种异常现象。脏读指读取未提交的修改数据;不可重复读指同一事务中多次读取数据不一致;幻读指读取记录范围时,前后读取结果数量不一致。这些现象通常由并发事务操作引起。
373 7
|
Java API Spring
Gradle基础笔记
配置Gradle镜像为阿里云,修改`gradle-wrapper.properties`。使用`subprojects`管理父项目,设定编码为UTF-8。应用Spring Boot和依赖管理插件,子项目排除特定依赖,如`javax.servlet`。针对项目间依赖,使用`implementation`或`api`关键字。完整示例展示了多项目构建,包括仓库、依赖、源代码设置、任务和编码配置。
417 1
|
运维 监控 安全
DevOps实践:构建高效运维团队的五大策略
在当今快速发展的IT领域,DevOps已成为提升软件开发和运维效率的关键。本文将深入探讨如何通过实施五大策略来构建一个高效的运维团队,包括自动化流程、持续改进、协作文化、监控与响应以及安全优先。这些策略旨在帮助组织缩短开发周期,提高软件质量,同时确保系统的稳定性和安全性。
321 32
|
存储 缓存 算法
数据结构与算法第十六讲:分布式算法之一致性Hash算法
数据结构与算法第十六讲:分布式算法之一致性Hash算法
265 0