当前位置: 首页 > article >正文

我的程序员之路

目录

1.概述

2.初识编程到多语言编程

3.现代编程方式


1.概述

我的程序员之路还算是比较丰富和多元化的,同时我也注重长期坚持学习。与时俱进,一专多能的目标从来没变过。从最初学习底层的汇编语言和C语言开始,我的技术栈逐渐扩展到更高级的编程语言和多样的开发环境。经历涉及了从早期的Turbo C到现代的IDE,如Visual Studio和IntelliJ IDEA、DevEco Studio,以及多种编程语言和数据库系统。

在项目经验上,我参与的领域涵盖了交通、医疗、制造业和安全等多个关键行业,不仅技术要求高,而且对稳定性和安全性的要求也高。我列举几个比较典型的吧!

1. 出租车计价器:涉及嵌入式系统开发和实时数据处理,当时用的Keil3,是很多年前的事情了,北京的4万俩出租车计价器,就是当时我们研发的,品牌这就不透露了。

2. ETC电子收费系统:我们算是国内第一批做ETC的了,在网络通信和高速数据处理方便下了一些功夫,当年做测试还是抱着台式机去的。

3. 医疗设备:主要是血糖仪和OCT,要求高标准的精确性和可靠性,涉及复杂的算法和数据保护措施,品牌还是不透露哈。

4. 机床:很著名的一些重工企业就是我们的客户,比如:xx重工,xx自控,xx软控,xx康等。涉及到自动化控制和精密机械操作的技术,当然,我们主要做软件。

5. 枪柜:这个不能说太多,是x防的项目。涉及到集成安全控制系统和访问控制技术。

6. 光缆监测:这个是目前的主业。涉及到网络技术、大数据分析、三维GIS、系统集成等内容。从设备到平台的一整套解决方案,主要客户是国企、央企、运营商、*队等。

数据库方面,从SQL Server2000到2008r2,MySQL和Oracle,再到国产的人大金仓、达梦和openGauss,都曾经使用过,当然目前以国产化为主。

操作系统方面,Windows Server、Ubuntu、CentOS、Readhat、BCLinux、openEuler等,现在还是以国产化为主。

目前使用的搭配就是三个字:国产化。从芯片、操作系统、数据库,都是能用国产就是国产。我好期待鸿蒙PC,搭配上DevEco Studio,加上仓颉开发语言和ArtTS,哈哈,完美组合。

我的程序员之路在一定程度上也体现了技术深度与广度的结合,在不断变化的技术环境中不断学习和适应。在我看来,做技术的人就应该是与时俱进、一专多能的。

2.初识编程到多语言编程

大学第一学期,汇编和C语言,这是第一次接触编程。我是花了别人双倍的时间才基本学明白。C语言学起来还好一些,汇编真是不好学,不知道雷布斯是怎么考的满分。当然,我觉得学习了C语言以后,后面学啥语言都相对容易了,汇编由于用得少,或者说基本不用,现在也忘记的差不多了。我至今还记得C语言课程上,老师说的分号结尾,怕忘记就先打个分号。还有一个就是欲输入,先输出,scanf之前,先printf。还有就是hello world,这个学编程的都知道,打印的第一句话就是这个。

#include <stdio.h>  //引入标准输入输出库。

int main() 
{
    printf("Hello, World!\n");  //使用printf函数输出字符串。
    return 0;  //正常退出。
}

下面来说说从汇编语言过渡到学习其它多种高级语言的过程中,遇到的最大挑战是什么,这里就说的比较理论化了,编程本来就是很抽象的。

1. 抽象层次的转变:汇编语言操作接近硬件层面,关注于寄存器、内存地址等底层细节,而高级语言则提供了更高级的抽象,如对象、类、方法等。这是从底层到高层的思维转变,需要时间和实践来适应。

2. 语法和语义的多样性:每种高级编程语言都有其独特的语法和设计哲学,比如Java的面向对象、Python的简洁明了和C#的多范式支持。学习和掌握每种语言的特性,以及如何在不同的语言之间进行思维转换,是一个挑战。

3. 内存管理:在汇编语言中,程序员需要手动管理内存,包括分配和释放。而在许多高级语言中,如Java和Python,内存管理是自动的(通过垃圾回收机制)。理解和优化自动内存管理的行为,以及在需要时进行手动内存管理(如在C/C++中),需要深入的理解和实践。

4. 工具和环境的变化:从使用基本的开发环境(如Turbo C)到现代集成开发环境(IDE)和版本控制系统,技术栈的变化带来了新的学习需求和工作方式的改变。

5. 性能优化:虽然高级语言提供了更高效的开发流程,但有时可能牺牲了运行时性能。了解如何在不牺牲代码质量的前提下优化高级语言的代码,是一个持续的挑战。

6. 多范式编程的理解与应用:高级语言往往支持多种编程范式,如过程式、面向对象、函数式等。有效地利用这些范式,根据项目需求选择合适的编程风格,是需要积累和实践的技能。

3.现代编程方式

时代在进步,技术在发展。最不可能改变的就是变化。科技行业尤其明显。现代编程方式是多样化且不断发展的,包括了多种编程语言、工具、方法论以及最佳实践。我们从以下几个方面来讨论。

1. 多语言和多平台开发:现代编程不再仅限于单一语言或平台。开发者需要掌握多种编程语言和技术栈以适应不同的应用场景,例如使用Java开发企业级应用、使用Python进行数据分析和机器学习、使用JavaScript开发前端和Node.js开发后端等。

2. 面向对象和函数式编程:现代编程语言通常支持多种编程范式。面向对象编程(OOP)依然是主流,通过封装、继承和多态来组织复杂的代码结构。同时,函数式编程(FP)也越来越受到重视,强调不可变性和函数作为一等公民,能有效提高程序的可读性和可维护性。

3. 敏捷开发和持续集成:现代编程强调敏捷开发方法,如Scrum或Kanban,促进了快速迭代和灵活应对变化。持续集成(CI)和持续部署(CD)的实践确保了代码的质量和快速部署。

4. 云计算和微服务架构:随着云技术的普及,现代编程常常涉及到构建在云平台上运行的应用。微服务架构通过将应用拆分成小的、松耦合的服务来提高可扩展性和容错性。

5. 开源文化:现代编程深受开源文化的影响。开发者常常利用开源工具、库和框架来加速开发过程。同时,也贡献自己的代码到开源社区,促进知识共享和技术进步。

6. 自动化测试:现代编程重视自动化测试来保证软件质量,包括单元测试、集成测试和功能测试等。测试驱动开发(TDD)是一种常见的实践,鼓励先编写测试代码,再编写实现代码。

7. 人工智能和机器学习的集成:随着AI和ML技术的成熟,现代编程越来越多地集成这些技术来提高应用的智能化水平,比如可以通过机器学习模型来提升用户体验或优化后端算法。

8. 安全性和隐私:在数据泄露和网络攻击日益严重的今天,现代编程必须重视安全性和隐私保护。包括使用安全的编码实践、定期更新依赖库和框架以及实施严格的安全测试等措施。

现代编程是一个涵盖广泛技术、工具和实践的集合,这就要求开发者不断学习和适应新技术,同时也提供了极大的灵活性和创造力的空间。还是那八个字:与时俱进,一专多能。


http://www.kler.cn/news/360513.html

相关文章:

  • R01 vue+springboot 高考志愿推荐AI问答大数据平台
  • 2024软考网络工程师笔记 - 第4章.局域网和城域网
  • 在linux主机上用两台虚拟机(linux)实现虚拟串口通讯
  • 高效调用API接口:解锁商品详情数据的秘诀
  • 【人工智能】Transformers之Pipeline(二十):令牌分类(token-classification)
  • 生成文件夹 - python 实现
  • 鸿蒙开发:什么是ArkTS语言
  • 汉诺塔问题和青蛙跳台阶问题(c语言)
  • 【MySQL】 表的增删操作
  • mysql5.7.30绿色版安装
  • 无极低码课程【mysql windows下安装要点】
  • git 与 github 同步
  • 简历修订与求职经历 - Chap04
  • Android Framework AMS(06)startActivity分析-3(补充:onPause和onStop相关流程解读)
  • 深度解析机器学习的四大核心功能:分类、回归、聚类与降维
  • 025_net基于.NET的小型超市商品管理系统2024_m28u50w3
  • 【数据分析+深度学习算法】基于深度学习音乐数据分析可视化推荐系统(完整系统源码+数据库+开发笔记+详细部署教程+虚拟机分布式启动教程)✅
  • LeetCode 面试经典150题 219.存在重复元素II
  • jetson nano ubuntu20.04安装ros-Noetic
  • 2024.10.19小米笔试题解