永远在路上

今年的1024是自己过的第八个程序员节,虽然没有放假,但是公司给每一个程序员都发了一个水果拼盘的福利,礼轻情意重吧!毕竟有许多公司都欠薪的情况下,我们公司不仅按时发薪资,而且还有固定福利和节日福利,算是非常不错的公司了,我很庆幸自己可以加入这家公司。

作为一个老程序员,其实是有很多心得体会的,叫做程序员之禅吧。尤其在这样一个特别的日子里,心中百感交集,特别适合分享自己的禅道。

在路上

如题,程序员是一个永远在路上的职业,因为这个行业永远在革新,永远在迭代,所以程序员几乎等同于终身学习的职业。如果你总是乐于学习新的技术,那么你真的非常适合这个职业;如果你本身不爱学习,没有浓厚的好奇心,那么你不太适合这个职业。

自己今年就新学习了Python,并且还打算学习Mojo和Rust,因为在AI时代,这三门语言就是AI的必修课。Python是入门级的,也是必修课,这几年一直蝉联榜首,AI周边的配套库非常完备,各种Github上的开源项目应有尽有。

但是Python始终是脚本语言,它的性能决定了这门语言很难开发一款杀手级的应用,但是不妨碍你做一些任务型的工作。有人可能会说,很多大型项目不是Python写的吗?比如PyTorch或TensorFlow这样的AI框架,都是基于Python的,但是都会面临性能瓶颈,所以才会有Mojo号称比Python快68000倍。

Mojo

Mojo 结合了 Python 的可用性和 C/C++ 的性能,Mojo被设计为Python的超集。Mojo是一个用于构建异步、非阻塞、事件驱动的应用程序的库。它提供了一种简单的方式来处理异步操作,使得开发者可以专注于编写业务逻辑,而不需要关心底层的线程管理和事件循环。Mojo主要用于构建高性能的网络服务器和客户端应用程序。

Mojo的优点

   - 异步编程:Mojo提供了一种简单的方式来处理异步操作,使得开发者可以专注于编写业务逻辑。
   - 高性能:Mojo使用了零拷贝、事件驱动等技术来提高应用程序的性能。
   - 易于扩展:Mojo的设计允许开发者轻松地添加新的功能和协议。

Mojo的缺点

    - 生态系统相对较小:虽然Mojo有一个活跃的社区,但其生态系统相对于其他成熟的网络库(如Boost.Asio、libevent等)来说还是较小的。
   - 成熟度:Mojo目前还处于发展阶段,可能存在一些尚未发现的问题和bug。

Mojo现在还不支持Windows,所以我暂时还不打算学习,也许在支持Windows后我就会入手,再这之前我会优先学习Rust。

Rust

Rust是一种系统编程语言,它强调安全、并发和性能。Rust的设计目标是提供内存安全而无需垃圾回收的保证,同时保持良好的性能。Rust在许多领域都有广泛的应用,如Web开发、嵌入式系统、游戏开发等。

Rust的优点


   - 内存安全:Rust通过所有权和借用系统确保了内存安全,避免了空指针解引用等问题。
   - 高性能:Rust编译器会生成高效的机器代码,使得Rust程序在运行时具有很高的性能。
   - 并发支持:Rust提供了丰富的并发编程工具,如线程、消息传递、共享状态等。
   - 生态系统:Rust有一个庞大的社区和丰富的第三方库,可以帮助开发者快速构建各种应用。

Rust的缺点


   - 学习曲线陡峭:Rust的语言特性和设计理念相对复杂,对于初学者来说可能需要较长时间来学习和适应。
   - 错误处理:Rust的错误处理机制需要开发者显式地处理错误,这可能会导致一些额外的代码负担。

永远

我从不厌倦学习这些新技术,因为我能从中感受到乐趣,所以我不承认自己是内卷,除非我所学习的知识是枯燥乏味的。AI是非常有趣的技术,它就是一个永远不知疲倦学习的机器,人也是这样,我们永远紧跟时代,永远会创造新的编程语言,这些语言新贵总有一些非常棒的设计值得我们去学习,所以程序员永远都在路上。

真正热爱编程的人,一辈子都是程序员!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/118373.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python自动处理pptx:新建、另存、添加幻灯片、添加标题、插入文本图片图形、提取文本

Python-pptx库是一个用于创建、更新和读取Microsoft PowerPoint .pptx 文件的Python库。它允许我们使用Python脚本自动化PowerPoint文件的创建、更新和读取操作,是一个非常方便自动化处理PPTX的工具。 安装 pip install python-pptx创建 from pptx import Prese…

【Note】链式存储结构

设计不同的结点结构,可以构成不同的链式存储结构。常用的有:二叉链表、三叉链表、线索链表(用空链域存放指向前驱或后继的线索)。 二叉链表存储 VS 一般二叉树 二叉链表 VS 二叉树 知识点: 一个二叉链表由根指针root…

es查询限制10000,使用scroll

报错: TransportError(500, ‘search_phase_execution_exception’, ‘Result window is too large, from size must be less than or equal to: [10000] but was [10010]. See the scroll api for a more efficient way to request large data sets. This limit …

vue3+vite在线预览pdf

效果图 代码 <template><div class"pdf-preview"><div class"pdf-wrap"><vue-pdf-embed :source"state.source" :style"scale" class"vue-pdf-embed" :page"state.pageNum" /></div…

Python:实现日历到excel文档

背景 日历是一种常见的工具,用于记录事件和显示日期。在编程中,可以使用Python编码来制作日历。 Python提供了一些内置的模块和函数,使得制作日历变得更加简单。 在本文,我们将探讨如何使用Python制作日历,并将日历输出到excel文档中。 效果展示 实现 在代码中会用到cale…

spring常见问题汇总

1. 什么是spring? Spring是一个轻量级Java开发框架&#xff0c;最早有Rod Johnson创建&#xff0c;目的是为了解决企业级应用开发的业务 逻辑层和其他各层的耦合问题。它是一个分层的JavaSE/JavaEE full-stack&#xff08;一站式&#xff09;轻量级开源框架&#xff0c; 为开…

25.2 MySQL 运算符

1. 伪表 在MySQL中, DUAL是一个特殊的单行, 单列的虚拟表, 主要用于在SELECT语句中计算表达式或执行函数, 而不需要从实际的数据表中检索数据. 使用DUAL的原因主要有以下几点:* 1. 简化计算: 通过在SELECT语句中使用DUAL, 可以方便地计算表达式或执行函数, 而无需创建临时表或…

thinkphp5使用phpmail发送qq邮件

目录 1、使用composer 工具安装&#xff0c;在tp5根目录下执行 2、封装发送邮件方法 3、控制器中调用 4、运行后结果 1、使用composer 工具安装&#xff0c;在tp5根目录下执行 composer require phpmailer/phpmailer 安装成功后显示下面目录 2、封装发送邮件方法 function…

linux中好玩的数据流定向和管道命令一

知识点复习&#xff1a; 什么是数据流定向&#xff0c;个人理解就是将 一些结果信息不打印在屏幕上&#xff0c;而是定位在某一个文件里面 ll /wdf > file 会覆盖file的原内容 ll /wdf >> 会追加到原文件后面 比如在自己的目录新建1.TXT&#xff0c; 2.txt ll /…

echarts 仪表盘统计图

<!--仪表盘统计图--><div class"ybptx" ref"btryzb"></div>mounted(){this.getBtData();}getBtData() {let chart this.$echarts.init(this.$refs.btryzb);let data_czzf this.cznlzhpj.czzfs;let option {series: [{name: 内层数据刻…

TypeScript 快速入门

一、TypeScript 是什么 TypeScript 是一种由微软开发的自由和开源的编程语言。于2012年推出。 TypeScript 是 JavaScript 的一个超集。为 JavaScript 添加了类型系统。 TypeScript 与 JavaScript 的区别 TypeScript JavaScript JavaScript的超集用于解决大型项目的代码复杂性 …

asp.net网球馆计费管理系统VS开发sqlserver数据库web结构c#编程Microsoft Visual Studio

一、源码特点 asp.net网球馆计费管理系统是一套完善的web设计管理系统&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为vs2010&#xff0c;数据库为sqlserver2008&#xff0c;使用c#语 言开发 aspnet网球馆计费管理系统1 二、…

Vue 项目进行 SEO 优化

SSR 服务器渲染 服务端渲染, 在服务端 html 页面节点, 已经解析创建完了, 浏览器直接拿到的是解析完成的页面解构 关于服务器渲染&#xff1a;Vue 官网介绍 &#xff0c;对 Vue 版本有要求&#xff0c;对服务器也有一定要求&#xff0c;需要支持 nodejs 环境。 优势: 更好的 …

01. 板载硬件资源和开发环境

一、板载硬件资源 STM32F4VGT6-DISCOVERY硬件资源如下&#xff1a; (1). STM32F407VGT6微控制器有1M的FLASH存储器&#xff0c;192K的RAM&#xff0c;LQFP100封装 (2). 板上的ST-LINK_V2可以使用选择的方式把套件切换成一个独立的ST-LINK/V2来 使用&#xff08;可以使用SWD…

NPI加速器在烽火科技SMT车间的应用:贴片机程序制作效率的革新

烽火科技&#xff0c;一个在国内颇具知名度的高科技企业&#xff0c;坐落于武汉光谷的SMT车间中&#xff0c;机器嗡嗡作响&#xff0c;作业员们忙碌地进行着生产。工厂使用的是ASM的贴片机&#xff0c;使用Sipalce Pro作为其编程软件。然而&#xff0c;在高效的生产线背后&…

Hafnium简介和构建

安全之安全(security)博客目录导读 目录 一、Hafnium简介 二、Hafnium构建 2.1.1 先决条件 2.1.1.1 构建Host 2.1.1.2 工具链 2.1.1.3 依赖 2.1.1.4 获取源码 2.1.2 构建 一、Hafnium简介 可信固件为Armv8-A、Armv9-A和Armv8-M提供了安全软件的参考实现。它为SoC开发人…

OpenCV #以图搜图:感知哈希算法(Perceptual hash algorithm)的原理与实验

1. 介绍 感知哈希算法&#xff08;Perceptual Hash Algorithm&#xff0c;简称pHash&#xff09; 是哈希算法的一种&#xff0c;主要用来做相似图片的搜索工作。 2. 原理 感知哈希算法&#xff08;pHash&#xff09;首先将原图像缩小成一个固定大小的像素图像&#xff0c;然后…

vue 中 mixin 和 mixins 区别

目录 前言 用法 全局Mixin 局部Mixin 代码 理解 高质量的Mixin使用 在Vue.js框架中&#xff0c;Mixin是一种非常重要和强大的功能&#xff0c;它允许开发者创建可复用的代码片段&#xff0c;并将其应用到一个或多个组件中。Vue提供了两种方式来使用Mixin&#xff0c;分别…

【JAVA】:万字长篇带你了解JAVA并发编程【一】

目录 【JAVA】&#xff1a;万字长篇带你了解JAVA并发编程1. 并发编程基础并发与并行并发&#xff08;Concurrency&#xff09;并行&#xff08;Parallelism&#xff09; 线程与进程线程的状态与生命周期线程同步与锁 2. Java并发工具类准备&#xff1a;多线程测试工具类synchro…

FPGA驱动步进电机-Sin曲线加速

FPGA驱动步进电机-Sin曲线加速 基本实现原理实际仿真的波形程序 以下由特权同学的FPGA文档摘取 Sin 曲线控制 step 脉冲信号生成的功能框图如下所示。 基本实现原理 ①判断步进电机驱动的目标频率 stepper_delay_target 与当前频率 stepper_delay_current的值是否一致&#…