同事都是用的win做java开发,我用mac开发方便吗?
可以说的是你用Mac一定比你用win做Java开发的同事方便,这点是毋庸置疑的。
这里我说一个我身边的例子:我的一位同事原先是用win做j***a开发的,但是其他人都是mac开发,他始终坚持着自己的观点,说win开发方便,mac用着不习惯。大家都觉得他too young too simple!有一天他的win坏了,公司给换成mac了,也借此机会让大家统一用mac做开发。后来这位同事在经历过阵痛之后终于承认mac比win好用。
mac比win开发方便
mac比win开发方便,就像idea开发比eclipse方便是一样的道理,即使依旧有很多铁粉或者不愿作出改变的人认为“eclipse好用,不好用只是你不会用”,不可否认的是idea就是比eclipse好用,mac也是一样的道理。注意事项
但是你这有一个问题就是同事都用win开发,只有你用mac开发,这个会涉及到编码问题还有代码格式化的问题。这里需要大家在开发同一个项目时候保持一下约定:- 文件统一***用UTF-8编码,避免不同电脑上乱码的问题;
- 缩进不允许用tab,不允许使用idea或者eclipse自带的格式化功能;
- ***用统一的jdk版本号,和线上的保持一致,便于构建打包时候编译生成的class文件一致;
mac的优点
用过windows系统的和mac系统的应该都知道mac的流畅度没的说啊,即使cpu使用率达到百分之八九十也是顺畅的运行啊,windows就不行了,死慢死慢的,尤其是程序员需要打开各种软件时候,window真心伤不起。mac的系统和linux系统都是类Unix系统,所以在使用的命令上和linux都差不多,熟练使用mac电脑进行编程,对linux系统的运维也有一定的帮助。mac系统的UI比windows的好看有没有?用了mac的有没有觉得windows的界面有点丑?所以题主请继续使用mac电脑,即使身边的人用的都是windows电脑。不方便,最好统一平台。win在有些地方和mac操作起来是不一样的,比如本地路径(win带有盘符,mac无盘符,斜杠写法也不一样)、软件及设置(win下大多用xshell,mac大多用terminal或securecrt,界面设置不一样,功能也不一样,和团队用的不一样以后有些东西需要自己摸索)等等。
有时候有些软件需要特殊设置,如内外网转发、服务器登录脚本、加密脚本等,但一般公司都只会针对一个平台来进行教程编写,那么你的环境和别人的不一样,就需要自己浪费时间来摸索达到和其他同事电脑一样的效果了。
1.mac无弹窗,游戏少,更专注
2多个工作区轻扫鼠标就能切换,适合控制台和多个项目和谷歌全屏,现在win10好像也有了,不过还是不如触摸板和magic鼠标轻扫方便
3.bash bash bash,做服务端开发都是linux,windows的powershell不想学,mac集成了bash,带的curl wget等命令都是原生的,win必须装cygwin之类的,麻烦,且容易出问题。还有控制台的复制粘贴和中断冲突,mac***粘贴不存在快捷键冲突
4.服务端开发为了提升运行效率,会调系统特性,比如epoll,这也是硬伤。
5.其实如果办公软件比如钉钉,微信,office支持linux,我觉得一些发行版可以代替mac做开发系统。
用Mac做J***a开发好几年了,现在用的是15寸macbook pro,把个人认为不如win的地方列出来吧,您要是解决了以下问题欢迎交流哈:
1.win的分屏功能太好用了,mac也有,但没那么方便。
J***a未来会不会淘汰,为什么这么多人觉得j***a过时了?
J***a仍旧是当今的主流开发语言,其生态十分繁荣,国内基本所有大的互联网公司也都在用,特别是[_a***_]系的公司,在移动端开发(Android)、服务端开发(Spring全家桶)、大数据处理(Hadoop系)中占有绝对地位,所以目前不能认为是过时的。
对于会不会被淘汰,现在出现了一些挑战者,比如Go、Kotlin、.Net Core、Rust等等,他们在不同的领域对J***a构成了一些威胁,其中服务端领域最有可能挤出J***a的就是Go,Github上搜索某些热门关键词,Go的仓库数量已经超过J***a,招聘领域也很火,这既有J***a语言历史包袱过重的问题,也有新兴语言设计更优的原因。从长远看有逐渐被替代的趋势,但是短时期还不至于被淘汰,毕竟用的地方很多,从业人员很多,从成本上不允许。
从开发人员的角度来看,不能把自己绑定在一门语言上,需要更大的视角,成为软件工程师,而不是某某语言工程师。这就需要扎实的技术基础知识,计算机、操作系统、网络相关原理需要搞清楚,各种架构思想、编程范式、设计模式需要有所认识和理解。了解上边这些内容对于使用各种语言才不会迷失,然后各种语言设计出来都是应对当时技术界面临的挑战,都有自己的解决问题的范围,选择合适的语言和框架解决问题才是正确的选择。