V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  libook  ›  全部回复第 240 页 / 共 251 页
回复总数  5019
1 ... 236  237  238  239  240  241  242  243  244  245 ... 251  
@crayonyi 现在计算机技术领域不缺硬技能强的人,倒是软技能强的人很罕见。
个人观点:

要相信代码是给人看的,只是顺便让机器来执行,所以可读性第一。

基本方法是分层和解耦,每一层能一目了然就好,例如:
把大象装进冰箱里的程序。
主函数层是这样几步:
1. 把冰箱门打开;
2. 把大象装进去;
3. 把冰箱门关上。
其中引用了三个函数,拿函数 1.“把冰箱门打开”来看又细分为如下步骤:
1. 找到门把手;
2. 判断把手的触发类型;
3. 将门把手调整为开门状态;
4. 判断门是朝哪个方向开;
5. 打开门(返回)。

这些没有硬性的标准,是纯粹主观感知的,自己写完可以看一遍,通过篇幅、分段(块)等自己判断一下是否足够“一目了然”。

判断是否是“一件事”本身是无法精确实现的,全靠对函数的主观定义,比如如果我把函数定义成“打开冰箱门”,那这个函数就只能做打开冰箱门的事情,但如果定义为“开关冰箱门”就可以用来开或关冰箱门,这确实也可以理解为是“一件”事情。
换个角度来说,对于函数的规划是根据需求来不断变化的,所以做项目的时候要关心这个功能以后的发展方向是什么样的,然后根据对未来迭代对这个功能的修改进行适当的扩展性和维护性的设计,以后需求变成这样的话这个函数是否好改,改完后是否还能保持较好的扩展性和维护性。这需要经验。
2017-01-19 10:33:08 +08:00
回复了 Lothar 创建的主题 程序员 大家写 Node 一般用什么 IDE / Text Editor ?
图省事用 WebStorm 、 VS Code ,后端前者先入为主,后者能很好支持前端各种复杂的编码环境(如同门的 TS ,结构特殊的 VUE2 )
喜欢免费开放的用 Atom
喜欢高度定制和折腾的用 Sublime 、 Vim

以上只是流行的东西,关键用自己用着顺手的就行。
前端分两套,正常业务页面和 SEO 页面,把能暴露出去的且希望搜索引擎爬到的防盗 SEO 页面里,正常页面做好防爬措施,使用流量技术+搜索引擎配置的方式引导搜索引擎去爬 SEO 页面。
如何快速入门一项技术
如何读一本书
怎样才算是一个优秀的技术人员
语文能力
翻墙能力
英语水平
如何沟通
如何解决问题
如何打破所学的知识体系
2017-01-13 12:07:19 +08:00
回复了 it407841482 创建的主题 程序员 询问大家一个十指盲打时手指摆放的问题,谢谢。
键盘布局有很多种,不同布局指法可能有区别。

建议可以尝试一下微软的人体工程学键盘,分分钟纠正指法问题。
2017-01-11 18:28:42 +08:00
回复了 caotian 创建的主题 云计算 阿里云不愧是阿里系的,无孔不散发着收费收费的气息
搬吧,我们曾经遇到过拿着阿里云的用户协议提工单,之后他们把用户协议修改了的事情。
2017-01-11 18:25:46 +08:00
回复了 pinkman 创建的主题 程序员 请问有啥比较薄便携但值得反复看的书吗?
电子书。。。
2017-01-11 18:22:43 +08:00
回复了 deweixu 创建的主题 程序员 为什么国内的一些 APP 不在 google play 上 上架?
国内安卓生态和国际上完全不一样,最起码流氓(滥用)行为是可能会被人举报的,但是在国内这些流氓行为又是应用生存的根本。
GFW 下,服务国际用户就要有国际的计算资源,不一定收益能跟得上,性价比低。
分成问题,虚拟服务的话需要使用应用内支付, Google 会抽走大概 15%的交易额,心疼吧?
应用内好像是不能集成自动下载更新的逻辑的,只能从 Google Play 上下载更新,或者链接到 Google Play 。

总之呢,国内 Android 市场很大、很自由, Google Play 相对中国开发者来说市场很小、限制很多,不过情怀做 APP 的话在哪里发布都会受欢迎的。
2017-01-05 11:25:39 +08:00
回复了 cnt2ex 创建的主题 Linux 拿来当个人用的桌面系统用, fedora 还是 debian?
真正生产场景会更加多样化和复杂化,这时候定制性是王道; Mac OS 的设计更加专注于文秘办公和设计师,对于技术人员来说 Linux 的图形化界面如果折腾好了,加上许多强大的 Open Software 的支持,生产效率要比 Mac OS 高一些, Mac OS 的一些非常用心的设计有时候可能就变成了设计师的自我陶醉。我选择 Mac 的主要原因是移动便携和续航,如果不是要经常抱着电脑来回走动我肯定会选择台式机+Linux ,请不要问我为什么不在 Mac 上装 Linux😂。

也没必要死命装 Linux , Windows 10 提供了 Ubuntu14 的子系统,除了有一点慢以及个别系统级别的接口不能用以外用起来还行,最起码应用级别的使用和开发、编译都能满足需要,而且 M$最近几年在强力拓展开发者的市场,对于各种新技术以及开发环境的支持和优化都做了很多工作,未必是不好的选择(言外之意:不喜欢折腾真心不适合用 Linux ,用了也不会觉得好,正如 @Vizogood 所说,你最终肯定会回到 Windows ,也有可能买 Mac 。选择自己喜欢的才重要,对吧?)。
2017-01-05 10:54:33 +08:00
回复了 cnt2ex 创建的主题 Linux 拿来当个人用的桌面系统用, fedora 还是 debian?
@cnt2ex 这样的话选什么系统就无所谓了,重点是对你的现有硬件支持最好,然后自己折腾好之后就不要经常升级。许多发行版提供的 LTS 版可能是个不错的选择。

以前听说有的 pppoe 服务商貌似会用技术手段封掉转接热点的功能,不知道是不是真的,反正之前在大学里运营商为了坑钱是不让用路由器的,用了会不定期掉线。
2017-01-04 18:04:50 +08:00
回复了 cnt2ex 创建的主题 Linux 拿来当个人用的桌面系统用, fedora 还是 debian?
# 从驱动和兼容性方面来讲:

支持新特性与高稳定性是相互矛盾的,鱼与熊掌不可兼得,我的建议是硬件上装 Windows ,然后虚拟机里跑 Linux , Windows 解决了所有硬件问题,虚拟机自带快照功能也就不怕 Linux 崩溃。

我之前大概一年的时间就是 Win10+VirtualBox+ArchLinux ,开发的时候启动虚拟机全屏,下班了休眠虚拟机玩游戏,非常好用。

如果不想用虚拟机还想想让 Linux 完全兼容硬件的话还是用老台式机吧,绝对不会有任何问题。

笔记本就不要直接装 Linux 了,因为大多硬件都是定制的,所以厂家肯定只兼容 Windows 的,再说即便驱动都搞定了,耗电问题基本就把笔记本变成台式机了。

# 从桌面方面来讲:

Linux 发行版的话当桌面系统都一样,因为不同发行版可以装一样的桌面环境,常见的桌面环境有 Gnome 、 KDE 、 XFCE 、 Unity ( Ubuntu 独占)等,其他也有不错的,转要是看自己习惯和适合哪个。都没用过的话个人比较安利 Gnome3 ,多桌面机制和 MACOS 很像,但是比 MACOS 设计得好用很多,活用的话能很大程度提升效率。

# 从系统稳定性方面来讲:

基本上 Linux 发行版可以按照升级机制来分为两派,版本升级派和滚动升级派:
版本升级派(如 Ubuntu 、 Debian 、 Fedora 等)通常每一个版本有独立的支持周期,每个版本内部出现问题的情况较小,但是等到支持周期结束(大多是两年)就不得不升级下一个版本,虽然有的发行版提供了跨版本升级机制,但是升级完出问题的风险较高,到头来可能还得重新安装新版本的系统;
滚动升级派(如 ArchLinux 、 Debian Sid 等)没有系统版本号的概念,整个系统依赖系统中软件包的升级来达到升级自身的效果,优点是不会遇到系统大版本更新的麻烦,缺点是需要即时更新,如果长时间未更新突然更新好多软件包可能会有问题。
不管是哪个派别,如果系统架构发生变化(比如系统目录结构调整、 Systemd 取代 init.d 、 Wayland 取代 Xorg 等情况),想拥抱变化就只能重装系统或者折腾一下,什么?不想折腾?还是用回 Windows 和 MACOS 吧。

# 安利:

推荐 ArchLinux 的最大原因是 AUR ,几乎所有软件都能在 AUR 上找到,并且能一条命令安装好,包括好多商业软件和只有源码的野生开源软件。 AUR 的思想类似于 pip 、 npm 、 bower 、 gem ,众人拾柴火焰高,人人为我我为人人。
2017-01-01 10:24:18 +08:00
回复了 showzonezhu 创建的主题 Java 0 基础想入 Java,请大神指点
开发安卓貌似也可以不用 Java ,需求不多的话入 Java 的坑可能性价比会有点低,也可以看是否能用自己熟悉的语言,有一些框架是可以用非 Java 开发 Android 的,当然如果你想正式入坑深度学习 Android 的话还是要学 Java 和 C++的。
0 基础的话建议不要上来就学 Android Java 开发, Java 只是一门语言,可以用在很多领域,而 Android 开发只是其中一个,在这个领域会有自己的基于 Java 的一整套框架、库、工具和思想体系,建议先从 Java 语言本身入手,由于是非常成熟的语言,所以买两本讲 Java 本身基础的好书看一看就可以,有一定语言基础再学 Android 的实际应用的开发,好书好视频好文章也很多,自己去搜一搜就好了。
另外 2 楼 @yche 的建议也是极其有用的。
私以为学一个技术其实就是不断产生问题和解决问题的过程,在这个过程中自己可以不断加深对这项技术的熟练度和理解,这也是需要一段时间的。所以有问题就自己去搜,解决不了就提问。
2017-01-01 09:59:20 +08:00
回复了 eyp82 创建的主题 程序员 大家是怎么熟练的在两门以上语言之间切换的?
其实楼主应该是想问如何在特性不同但可用在同一领域的语言中切换;比如同样是服务端开发,有时候会因为追求不同特性而在一个项目的不同子项目使用不同语言,举个例子,基础业务使用 JS ,部分旧业务不重写继续用 Java 、 PHP 、 Ruby ,认证授权使用 C++,在一个迭代中可能需要在这些语言中来回切换。。。

不同语言对面向对象、同步异步思想等等支持是不一样的,设计程序和架构的时候也要区分考虑。

这也是我比较困惑的问题,有的时候甚至是同一门语言用在不同地方也是不一样的,比如 JS 用在服务端有 require 很方便,但用在前端通常都是在 babel 下用 import ,然后在旧版 MongoDB 中只能用 ES5 。

可能搜索引擎做速查是个比较靠谱的方法。
2016-12-17 23:53:24 +08:00
回复了 forvtwoex 创建的主题 问与答 网站能不能这样免于开发 APP,省不少成本啊?
@forvtwoex https://www.meteor.com/ 这个是 meteor 的网址,你可以看一看。
meteor 一旦上手,特别适合做初创的原型产品。
不过如果以后底层需求越来越多的话可能 meteor 这样“一栈式”的解决方案就无法满足需求了,因为 Meteor 是自己独有的一套开发思想和生态,所以到时候迁移到非 Meteor 架构就需要重新写项目,不过那时候应该也有足够的人力财力也能支持用底层一点的框架重写一遍了。
2016-12-17 21:31:17 +08:00
回复了 kn007 创建的主题 配件 各位用什么无线鼠标?有好推荐么?
logitech m570
2016-12-17 21:24:28 +08:00
回复了 Borden 创建的主题 分享发现 https 被攻破了?这也太耸人听闻了,谁给看看,感觉是瞎扯
数学上来讲,目前 HTTPS 本身还是完全安全的。
不安全风险是与 HTTPS 本身无关的,比如中间人攻击。
socket.io
照官网的例子做一遍,然后再改成自己的需求,基本上半天完事
2016-12-17 21:11:48 +08:00
回复了 kslr 创建的主题 问与答 想买个 PSP 玩 GalGame 但是从未接触过索尼产品,请指导一下购买
安卓上 ppsspp+蓝牙手柄
2016-12-17 21:10:20 +08:00
回复了 forvtwoex 创建的主题 问与答 网站能不能这样免于开发 APP,省不少成本啊?
很久以前用过 PhoneGap 、 Meteor ,写一套代码可以编译成所有平台 APP+网站,后来兼顾性能和开发效率转而研究 APP WEB 化思想,我们公司是用 React Native ,线上产品化半年了,效果还说得过去。
1 ... 236  237  238  239  240  241  242  243  244  245 ... 251  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5397 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 51ms · UTC 08:56 · PVG 16:56 · LAX 00:56 · JFK 03:56
Developed with CodeLauncher
♥ Do have faith in what you're doing.