1. 有哪些程序员必备的物品
电脑、鼠标、键盘等这些都是程序员必备的物品。
电脑一台性能好的电脑是工作中的好帮手,这里不纠结选Mac还是Windows,各凭喜好,但是一定要在能力范围内买性能最好的,否则工作时候卡一卡很影响心情,当然好处是能多点时间摸鱼。
现在笔者觉得性价比很高的是M1芯片的mini,在淘宝上不到八千就能入手,性能是真的好。唯一缺点是不能带着电脑去开会,显示器的话我相信大家要不公司配了要不就自己买了。显示器如果你公司福利好的话。可能会发4K的显示器,当然大部分还是配的1K的显示器。
这里很推荐大家购买4K的显示器,看起来会舒服很多,搭配公司发的整个双屏,工作效率会有一个不错的提升。键盘键盘很多人应该都会推荐机械键盘。对于这个笔者这里也就不多说了。其实相比于机械键盘,笔者会更喜欢静电容键盘,国产的价格几百块钱也不贵。
但是敲起来的手感会觉得比机械键盘舒服很多,而且也没有什么噼里啪啦的声音。私藏好物手写板笔者喜欢写代码。文章前里一个大纲、思路出来,字是越来越懒得写,还费纸,就直接上手写板了。这玩意淘宝上买个便宜的就行,小米八九十就能搞定,写代码前理好思路,能减少很多问题。
站立桌程序员久坐,再加上年级变大。腰反正是越来越差了,所以时不时地站起来活动一下是很有必要的,那么这个时候整个站立桌就很有必要了。一两小时升降一下,站立办公一会对身体好点。
2. 为什么现在很多程序员都喜欢用Mac作为主力开发了
最主要原因是,现在年轻一代,不管有没有钱但是一定得享受,用Mac主要部分还是装逼。要说好用windows也很好用,别给我说什么unix系统,链接服务器方便,终端好用和linux命令一样、系统不卡这些,这些在window都可以搞定。作为一个用了10年Mac的老程序员总结就是这些。已换windows
一方面是xcode的原因,另一方面是因为mac干扰少,windows容易卡,还动不动出弹窗广告,容易分心。我不用Xcode但是我也用mac,写c++用的sublime text。
软件开发,mac是首选,itream ,idea,subline,好用!主要是系统稳定,系统能用到机器报废,我第一台电脑还在用,11年的mbp13寸!
如果打 游戏 那必须windows
公司配置mac,我感觉是这几点吧!一,提供公司形象,
二,公司抵税,
三,算是给研发的福利,说提高效率有点扯蛋[呲牙]!
做app开发的,可以在mac上完成android和ios两个平台的开发,打包,上架。在win上想要完成ios端只能黑苹果。现在又有很多app前端混合开发或者搬砖的能同时搞android和ios,用mac省事。专做后端开发呢,win居多
用mac都懒人居多,大多不想折腾环境
因为linux很多底层环境都有了
例如,windows还要装很多才能搞makefile 指令,例如mingw这种...
跑git也是也是要装很多,装错移除也是一大困难。
不过若非XCode因素,ubuntu才是最适合软体开发的
因为你不可能把伺服系统架在macos上。。。 OS要钱
写完还要考虑环境在装在ubuntu上,简直傻B。
这是我周遭码农的心得。
卡不卡,是你电脑买太差, 有钱买mac却没钱买同价位的win笔电,这才是病。
分不分心,这是你的问题,说用mac就专心也只是借口而已。
当然这一切要建立在你不会用到Xcode情况。 否则正常码农首选因该是ubuntu类型。
开源/DIY/又可以服务器/免费商用
当你用了Mac开发以后,就回不去了。
Java程序员开发效率提升30%以上,关键还一直用一直爽,不像Windows下开发,一开始偶尔卡一下,后面偶尔不卡一下。
我也是在纠结究竟买Win好还是Mac好。作为开发老兵,用过Win,用过Linux,就是没长期用过Mac,这终是一块心病,但是多次看着Mac想入手,一考虑到价格还有点不舍得。一台Win的笔记本,就算比较贵的ThinkPad X1也没有Mac同等配置的贵,别和我说什么物有所值,钱才是第一考虑要素,至少对我来说是这样。工作上来说,Win肯定是够用的,绝对不会出现不能工作的情形,只有别的系统兼容Win的情况,不会有Win去兼容别人的情况。有人说,一个人可不可靠就看他做事稳不稳定,如果和领导或客户开会,突然有个程序或文档要打开,这时Mac系统卡壳会不会影响自己的印象呢?这个真不好说,但在职场还是保守点好,至少对我来说是这样。但是,技术上的冲动有一种强烈的吸引力,Mac从开始到现在,一直有一种精致的映像在市场中傲立,Win虽然好用,却没有这种引领 时尚 的风骨。对技术老鸟来说,什么技术都应该不算障碍了,把Mac配成和Win一样方便,甚至更方便也不是难事,唯独放下心中是不适应,即可。甚至,一种特立独行般的个性就是品牌所带来的价值,像耐克,阿迪一样,穿在身上总觉得更自信一些,用起Mac来是不是敲码都更快一些呢?现在我也立一个flag,等现在这个本子淘汰的时候,一定入手一台Mac,虽然每次下单的时候都会改变主意,这次真不想变了。别等哪天老奶奶都用上Mac,才开始入手就太Out了,虽然现在已经有点Out了。
一,界面简洁。
二,操作简单。
三,手机,电脑,iPad都是一个操作逻辑,上手快。
四,系统好
虽然都是用x86构架,但是内存管理依然和iOS一样。
五,没有乱七八糟的广告,和弹窗。
首先是开发苹果的app要比其他的赚钱啊,另一个则是稳定,主要体现在跨平台上,一台配置中等偏上的Mac装上虚拟机几乎满足所有系统的使用。而大厂的业务针对性也比较明显,加上苹果给予企业采购的折扣加增值税发票,其实要比采购win有优势。到一定的价格上,苹果的各方面性价比反而比win电脑要高很多。因为win在一定的性能上是需要加钱去堆配置的。苹果则不需要。当然,对于一部分人不会用Mac系统,只是单纯喜欢Mac的外观花一大笔钱买回来装双系统使用windows,这部分人在Win党眼里苹果是绝对没性价比可言的,同样价格他们可以自己配更好的台式电脑。当然理论总归是理论,假如你对Mac电脑感兴趣,而你日常使用的工具刚好Mac上有,那么你只需考虑你的预算能否购买一台Mac就足够了,作为生产力工具的Mac,无论是哪个型号的Mac,选16+512G的规格绝对是豪华版的,不存在不够用的顾虑,当然这是M1版的Mac选配,如果是intel版的最好是能选32+512G。相比win同价格区间好几十种配置,苹果的重点则是在内存和容量上。体验上苹果的标配和顶配并没有太大的区别落差,但大内存对于Mac是绝对的优势。你可以好几年不关机,打开软件不用关,系统后很少出现死机,即便出现极个别软件故障,也是需要强制关闭再打开即可。最后,选Mac买台式机永远不吃亏,不会有散热问题导致降频,或是功率不足带不了外接显示器的问题。总比win电脑买回来各种装驱动,调试,以及为了避免占内存关闭很多不必要的设置相比,苹果完全不需要这么深入操作。云同步更是无感知,无缝的体验。是个可以用很久的电脑
大概就是你看30帧电影和看60帧电影的区别吧,看30帧你也说不上哪里不好,反正一直都是怎么看的,但一看60帧你就感觉,卧槽,好丝滑好流畅
3. 程序员用什么笔记本电脑比较好
学编程可以用的笔记本电脑:
1、MacBook Pro 14
第一台编程笔记本电脑就是 MacBook Pro 14。高端处理器和一流品质。这个配备了最新的 Apple M1X (Pro) 处理器,显卡也是一个令人印象深刻的因素。可以根据 RAM 在此模型中找到多个选项。
2、戴尔XPS 15 OLED
戴尔的XPS 15 OLED型号也是一款出色的编程笔记本电脑。它是最近推出的最新款笔记本电脑之一,立即得到了专家和用户的好评。您对这款笔记本电脑有很多想要的东西,但第一个是您可以轻松获得适合您预算的理想 CPU。
3、联想ThinkPad X1 Carbon
联想ThinkPad是最畅销的笔记本电脑之一,该型号最适合编程。用户和程序员喜欢使用这款笔记本电脑,因为它具有巨大的编程潜力并提供出色的性能。笔记本电脑配备第 11 代英特尔酷睿 i5/酷睿 i7 CPU选项。
4、苹果MacBook Pro
这是一款13英寸笔记本电脑,具有智能2560 x 1600显示屏。它重量轻,尺寸便于携带。它CPU和 GPU是 Apple M1,因此可以获得足够好的性能,因为它非常强大。这台笔记本电脑将是 iOS/macOS/ipadOS 开发的绝佳选择。
5、宏碁 Aspire 5
宏碁是一个知名品牌,现在被认为是最具成本效益的电子产品的最佳品牌。这个具有广泛的配置,您还将获得令人印象深刻的性能。借助第 10 代英特尔酷睿 i3/酷睿 i5 处理器和英特尔 UHD/NVIDIA GeForce MX250 GPU,您可以期待最佳效果。
4. 同一个项目分别用stm32和51单片机会有什么不同
李工的经验,有如下几点不同,希望你供你参考。
1.51是8位单片机,而stm32是32位单片机。时钟方面stm32运行频率更高,性能更好。两种单片机性能差别比较大。
2.片上资源不一样。简单讲stm32单片机外设丰富,比如串口,I2c等。stm32单片机片上flash和RAM更大。以后升级功能,改进功能的空间大。如果考虑以后功能升级,建议考虑stm32.
3.成本上应该是51单片机要便宜一些。
4.stm32单片机开发资料和参考程序比较多,有库函数,应用起来方便。51单片机更多直接操作寄存器,开发不方便。
我是北漂李工,一个北漂8年的程序员。
在项目开发过程中,我们经常会遇到需要单片机选型,所以我们常常会根据项目功能需求来选择合适的单片机品牌和型号。常见的51内核单片机和STM32单片机也会是我们主要考虑的型号。
STM32与51单片机的参数差异 STM32与51单片机软件开发难度差异STM32使用寄存器比51单片机要多很多,其配置比51复杂,而且中断逻辑,时钟配置使能控制等很多概念都是51单片机中所没有的,再加上stm32很多功能如USB,FSMC。等等功能,其功能更加强大,虽然官方提供了开发固件库和相关开发辅助工具,但很多时候,遇到bug调试难度也加大了很多。
stm32固件库很多实用结构体和指针变量,很多在51单片机开发过程不太注重结构体与指针的使用,那么在STM32开发过程中,就难以理解其固件库的运用逻辑。
STM32与51单片机的性价比差异STM32比51处理速度快,外设功能丰富强大,所以价格普遍比51单片机偏贵,在项目选型过程中,需要根据项目功能需求,选择合适的单片机,如果是51单片机能用,那么考虑项目成本,肯定是不能选择STM32,如果51单片机不能用,即使再便宜,也用不了。
总之, 作为单片机开发工程师,需要能够进行一定的器件选型能力,这个也是必备的专业技能。
搞多了开发,你会发现其实用什么真的不重要,只要你会用就行。单片机好比一个精密机床,你要想加工一件作品,你用任何品牌的机床都可以,关键点是这个机床你会不会用,了解通透程度如何。不同品牌机床操作方法肯定大同小异,不会差别很多,你会用一种,另外一种不用看手册,也能猜出个七八分。机床这样,编程也是这样,给你个51,你应该能控制全世界。
首先如果同一个项目可以用51和STM32同时开发,就不建议使用STM32了,51成本更低。
STM32和51单片机不同点有很多:
1.开发方式不同
51单片机一般是直接操作寄存器,STM32主要操作库函数编程
2.系统资源不同
一般而言STM32资源要比51单片机更多
3.开发环境可能不同
51和STM32一般来讲都可以在Keil下开发,但STM32有更多中选择,可以在Linux下面开发,windows Esplise下开发,甚至直接用VSCode + 插件方式开发。
4.操作系统区别
一般而言,51单片机不支持操作系统,STM32支持各种主流操作系统,STM32开发起来更容易,可以很方便的利用系统实现各种场景下的应用,51单片机由于没有操作系统,开发起来有一定阻碍,甚至有时候必须要做出部分功能的牺牲才能达到整体功能的和谐运行。
5.后期维护方式可能不同
STM32资源足够多,可以写一个bootloader程序来完成之后的系统升级工作,不需要拆机就可以完成固件的升级,而51单片机则不可以。
STM32系列单片机分为CORTEX M0,M1,M4内核,个人觉得STM32F0系列的从性价比,功能上可以完全替代51单片机,而且性能更好。当然也可以使用51,价格更便宜一些,,但是要做功能复杂一些的产品,51系列的单片机是不能满足的,比如驱动RGB 屏,至少要用STM32F429,支持LTDC接口,而且需要外扩内存,支持FMC接口,比如要做数字音频,要支持I2S ,比如要做USB传输,要支持USB ,要移植操作系统,文件系统等等,要看CPU 的资源等等,总之,要根据所做的项目看CPU的资源是否满足要求是非常重要的,这要再设计前期靠考虑周到,否则,项目做到一半发现资源不够,需要重来是很郁闷的事情。
做产品要考虑成本,几毛钱就能搞定的,没必要几块甚至几十块。一般来讲,价格越贵的,资源越多,使用起来越简单,随心所欲。简而言之,价格越低,资源越少的单片机,完成项目的难度越大,需要优化代码和算法。
在stm32之前是8051的天下,silabs的c8051f外设相当的强大。硬件不错,可惜代码不够多。atmel的代码比较多,可惜芯片不够强大。
stm32一出,横扫天下,要硬件有硬件,要软件有软件,价格便宜量又足,连低端产品都用他。
电动自行车控制器都用它,无刷电机都用它。
stm32是史上最广泛使用的单片机。
只要资源够用,都可以,20年前我用8051,现在用stm32。stm32方便些,可以在线调试。我现在开发东西复杂一点的,用stm32 1系列和4系列。简单一点的用stm8s一块多钱的样子。
我觉得你的问题对比对象不太对,一般能用51的项目用stm8或者avr即可。一般来说stm32比51强太多了,无论是性能和价格都没有可比性。
所以在我看来开发上没有什么太大不同,无非就是开发环境不一样,如果代码规范的话很容易进行互相移植(最近芯片涨价严重,我们公司正在换国产),而所谓的外设(uart iic spi等等)其实没有太大区别。
但是在生产上差别就出来了,主要在于交货能力,一般而言同为一级代理采购物料,st的交货能力要比stc的强(当然最近行情st也不行了,交期干到了9月份)。所以如果你的产品是主力长期货,建议选择交货能力强的。
我就记得51单片机放不了几个变量就超出了。复杂点的程序都很难写。