我一看到这些玩意就不想写代码了怎么破

2017-04-15 21:08:08 +08:00
 sensui7

写代码之前, 先搞出一堆依赖, 不是说和业务相关的, 就是开发时 , 所谓提高工作效率, 倒不是说不好, 问题是这些依赖今天好使, 下周 api 可能就变了, 3 个月后就 deprecated 了, 看到这 60 多个包, 什么灵感都没了.....我只想关掉编辑器.

我想问一下, 后端或者 app 或者桌面软件开发, 也这样吗, 我只了解一些 php, 我感觉那时候也没这些劳什子, 我用框架, CI, laravel, 我写的代码, 都跟我业务需求有关呐... ...

小生真诚请教后端, app, 桌面领域的人士现身说法...

"devDependencies": {
    "autoprefixer": "^6.7.2",
    "babel-core": "^6.22.1",
    "babel-eslint": "^7.1.1",
    "babel-loader": "^6.2.10",
    "babel-plugin-transform-runtime": "^6.22.0",
    "babel-preset-env": "^1.2.1",
    "babel-preset-stage-2": "^6.22.0",
    "babel-register": "^6.22.0",
    "chalk": "^1.1.3",
    "connect-history-api-fallback": "^1.3.0",
    "copy-webpack-plugin": "^4.0.1",
    "css-loader": "^0.26.1",
    "eslint": "^3.14.1",
    "eslint-friendly-formatter": "^2.0.7",
    "eslint-loader": "^1.6.1",
    "eslint-plugin-html": "^2.0.0",
    "eslint-config-standard": "^6.2.1",
    "eslint-plugin-promise": "^3.4.0",
    "eslint-plugin-standard": "^2.0.1",
    "eventsource-polyfill": "^0.9.6",
    "express": "^4.14.1",
    "extract-text-webpack-plugin": "^2.0.0",
    "file-loader": "^0.10.0",
    "friendly-errors-webpack-plugin": "^1.1.3",
    "html-webpack-plugin": "^2.28.0",
    "http-proxy-middleware": "^0.17.3",
    "webpack-bundle-analyzer": "^2.2.1",
    "cross-env": "^3.1.4",
    "karma": "^1.4.1",
    "karma-coverage": "^1.1.1",
    "karma-mocha": "^1.3.0",
    "karma-phantomjs-launcher": "^1.0.2",
    "karma-phantomjs-shim": "^1.4.0",
    "karma-sinon-chai": "^1.2.4",
    "karma-sourcemap-loader": "^0.3.7",
    "karma-spec-reporter": "0.0.26",
    "karma-webpack": "^2.0.2",
    "lolex": "^1.5.2",
    "mocha": "^3.2.0",
    "chai": "^3.5.0",
    "sinon": "^2.1.0",
    "sinon-chai": "^2.8.0",
    "inject-loader": "^2.0.1",
    "babel-plugin-istanbul": "^3.1.2",
    "phantomjs-prebuilt": "^2.1.14",
    "chromedriver": "^2.27.2",
    "cross-spawn": "^5.0.1",
    "nightwatch": "^0.9.12",
    "selenium-server": "^3.0.1",
    "semver": "^5.3.0",
    "shelljs": "^0.7.6",
    "opn": "^4.0.2",
    "optimize-css-assets-webpack-plugin": "^1.3.0",
    "ora": "^1.1.0",
    "rimraf": "^2.6.0",
    "url-loader": "^0.5.8",
    "vue-loader": "^11.1.4",
    "vue-style-loader": "^2.0.0",
    "vue-template-compiler": "^2.2.4",
    "webpack": "^2.2.1",
    "webpack-dev-middleware": "^1.10.0",
    "webpack-hot-middleware": "^2.16.1",
    "webpack-merge": "^2.6.1"
  },
5636 次点击
所在节点    问与答
49 条回复
jakes
2017-04-15 21:11:27 +08:00
版本号全改成指定版本,不用这种最低版本限定不就可以了?
arzusyume
2017-04-16 00:32:17 +08:00
有道德的开发者会遵循语义化版本规范 ( http://semver.org/lang/zh-CN/)
不放心的话就指定具体版本 ( https://docs.npmjs.com/misc/semver)
AngelCriss
2017-04-16 00:37:25 +08:00
负责任的告诉你,我做后端极少依赖其它库。
lany
2017-04-16 00:39:30 +08:00
基本都是自己的私人库。
Tyanboot
2017-04-16 00:45:25 +08:00
我做 py 和 PHP 的时候也是除了一些特殊的部分,比如图像识别, HTML 解析,之类的,很少像 js 一样动辄依赖几百个包的情况。。
sagaxu
2017-04-16 00:48:32 +08:00
以前 Java 的 spring 也这么麻烦,后来 spring-boot 应运而生
sagaxu
2017-04-16 00:52:01 +08:00
@Tyanboot

对的,连 isArray 这么一行代码就做到的事情,也单独的是个 package ,下载量还不低

https://www.npmjs.com/package/isarray
watzds
2017-04-16 01:26:17 +08:00
@sagaxu 好厉害啊,一天一百万下载量…!
shyling
2017-04-16 01:34:28 +08:00
不觉得依赖一些包有什么问题,另外上面写的包都不会乱在 patch 里加 breaking changes 的吧?
跟不上变化就别升级啊。。
另外很负责的告诉你,很多人的代码写的并不见得会比 npm 一个很简单的包里的好
guokeke
2017-04-16 01:44:11 +08:00
你可以不用这些,照样写。而且我看了这些依赖,没有什么像 isArray 那样的, webpack , babel , eslint , express , karma 这些打包,转译,测试,这些都是很良心的工具,一些插件也不是必须的,可以去掉。
Miy4mori
2017-04-16 03:22:37 +08:00
依赖上百个包的 java 后端挺常见的,现代软件开发可不就是靠第三方包嘛。
FunctionOne
2017-04-16 04:04:58 +08:00
我跟你有同感的。
reeco
2017-04-16 04:38:19 +08:00
一个 node_module 动辄几百 M
kslr
2017-04-16 05:26:33 +08:00
Laravel Composer 其实也很多我
qhxin
2017-04-16 07:52:35 +08:00
node_module 在 Win8 下面删除的时候尽然报错,路径长度超过了系统能接受的范围,打开新项目 phpstorm 就去索引,卡的要命,这设计真心醉醉的。不同意楼上拿 composer 来比较的,主要是 js 这套升级换代太快了,而且经常不兼顾旧代码,说句不好听的话就是没有责任心。
isb
2017-04-16 07:59:25 +08:00
用 yarn
340244120
2017-04-16 08:00:03 +08:00
一楼已经终结本帖了。。。
kokutou
2017-04-16 08:38:33 +08:00
@qhxin 长度超出是奇葩 windows 路径长度的限制。。。
不过好在因为 wsl ,现在 win10 已经可以一个注册表解除限制了。
des
2017-04-16 08:49:30 +08:00
@qhxin
@kokutou 删除可以用 robotcopy
di94sh
2017-04-16 08:51:57 +08:00
不需要,可能会用一两个库。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/355128

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX