前言:一般技术栈是intellij idea里面前后端代码都放在一起,当然也可以前后端分离。后面发现了用jquery开发很难做到组件化还有一些其他问题。并且在学前端过程发现了好多东西,并不比后端少。然后自己学了react,准备前端换成ant一套。
程序员单干,不给人打工看人脸色,可行? | 10月问答集
前后端都要写的一些问题。
Q:
介绍:主要是写后台的,但是公司没做前端的,只能自己写前端,前期直接下的jquery一些后台管理模板来搞。一般技术栈是intellij idea里面前后端代码都放在一起,当然也可以前后端分离。后面发现了用jquery开发很难做到组件化还有一些其他问题。并且在学前端过程发现了好多东西,并不比后端少。然后自己学了react,准备前端换成ant一套。
问题:
1:前端开发软件?(使用什么编程软件开发前端代码一般前后端分离或者怎么在一个项目开发前后端代码)
2:详细开发流程(如首先yarn启动前端项目,然后打开变成软件开发前端代码,开发完成了打包复制到后台项目中去)
A:
>>>无名的骑士
一般都是http通信,后端restful写好,前端写对应的ajax,jQuery只能算库,想要组件化的话就angular或vue,前后端文件夹归好类,命名统一下,没有什么固定的开发工具,顺手就好
>>>王再壮
问题1: 前端开发软件?使用idea、webStrom都可以。既然前后端分离,你就把他分离成两个项目,接口定义好。前后端各自写模拟报文开发测试。后台项目功能就是提供接口,接收返回数据。
前端项目就是用户界面,需要数据就去后台项目存取。后台的话就不必多说了,json结构数据通信弄好,前端项目就能运行了。
部署到服务器上,通过Nginx去进入到你的前端首页。用户访问的是你的前端项目,你通过前端调用的后台接口。像你说的,前端项目打包复制到后台项目中去?不是这样用的= =
@樱木花道VS康
死循环怎么写比较合适?
Q:
大家好,我有这样一个需求,我要去一个文件夹中检索文件,只要有(xml),我就读取然后(业务操作)再然后删除文件,应该是一个死循环吧,不断的去指定的文件夹下读取,该怎么写比较合适呢?死循环不敢轻易写,,,while(true)?
A:
>>>蓝水晶飞机
while(true) 用户会 Kill 你进程的。
正常来说,还不需要死循环太着急,你只需要让线程睡眠一会,再进行检测文件一次,然后处理完再循环:

如果想让线程可控退出,那就将while(true)改为while(runFlag),只要将runFlag设置为false,线程最后会正常结束。
>>>坏_坏
为啥不做定时任务呢?每分钟执行一次,或者更快
@那位先生_
一道算法题,有兴趣的聊聊思路啊
Q:

A:
>>>ling0
很有意思的题目啊,来简单分析一下。
假设把 Pi 的前 10 万位数字一位一位的相加,那么结果一定不到 90 万,因为不可能每一位都是 9。
那么再进一步猜测一下,假设 0 到 9 出现的概率是均等的,那么结果应该在 45 万左右。
简单的加一下,位数就从 10 万位一下子减到了 6 位,处理 6 位明显要简单的多。
有了这些猜测,那么就验证一下吧。
写一个小程序,把 Pi 的前 10 万位每一位加一下,结果是 449323,果然,和猜测的差不多,无理数的随机性还是不错的。
如果能有一个方法把 449323 变成 500000 就好了,直接就加到个位达到目标了。
猜一下,这个数应该大于 50677,因为 49323+50677 = 100000。
但是,计算一下马上就能把 50677 排除,因为假设 5 个一个数拼成一个 50677 ,那么还要减去 5+0+6+7+7 = 25。
这里减的原因是, x+y+z 变成 100x+10y+z 时要减去 x+y+z ,因为个位数相加的时候已经算进去了,这里算是的增加了多少。
这是不可能的,50677 到 50699 之间一共也就 22,所以废弃。
到这里好像就看到曙光了,把 50677 加大到 50777,这样 49323+50777 = 100100 增加了 1 百。
如果真有拼加到一起增加 50777 就相当不错了,但是再简单的判断下,不必要这么精确。
只要把 449323 变成 5000xy 就可以了,只要 x+y 小于 5 就可以了。
范围一小子扩大了很多,不用认死 50777 了,找个 507xy 的就可以了。
随便找个比如, 50728。 50728-22+449323 = 500029。
不错,0 越多越好,把 29 变成 100 就容易多了。
随便找个试下, 97-16=81。
500029+81=500110,每位相加等于 7。
已经满足要求了。
写程序怎么写呢?
第一次单个位相加走一遍。之后就是加减计算加数字搜索了。
分析到这儿,写程序已经没什么难度了。
有约束条件,有目标,可以动态规划了。
因为这数字相加结果的第一位太小,位数太少不具有代表性。
如果是任意长的任意数字序列,第一次个位加的时候如果对结果不满意,把第一次相加的结果变成 1 或者 2 比较小的数开头的这样的,后面会简单的多,因为约束减小了,可用数范围扩大了。
注:不保证以上出现的数字都正确,仅用做示意。
>>>弦_
每次相加第一方案是默认以位数中间分为两个数字相加(每次加完后保证长度最多是上次的一半+1),第二方案是找到相加能凑出最多0的两个数字,两个相加方案相比较取最优
>>>OffSwitch
两步应该就可以了,如何减少之后的加法?题目中给出的实例其实已经很明确,1.计算之后结果的各个位数相加小于10(199之后1+99,成了100,100的各位相加小于10,因此避免接下来多余的相加),2.题目中也说明“在恰当位置插入+的算法”,请注意“恰当位置”这几个字。
那么第一步相加的结果范围应该在449323~10w个数之间,而最终结果为个位数,449323最后的结果是7,那么应该就可以找到这样的一个数,如1111111、11110111、111101011,1111012等,之后可能就像ling0那样找一个定值,然后就是搜索了。
@超载先生
java11发布了,像阿里这样的大厂会如何选择?
Q:
java11发布了,其中有一个大家都非常关注的问题,就是oracle对java的许可证做了修改。
所以想问问那些大厂的同学,你们公司是如何打算的?继续保持java8不再升级,还是逐渐过渡到java11?
如果打算过渡到java11的话是购买商业的 oracle jdk呢还是打算一直追新使用oracle openjdk呢(看roadmap好像openjdk没提供lts)?甚至是还有更高级的计划?
A:
>>>魔力猫
是否升级JDK,看的不仅仅许可证而是迁移成本。
不迁移,你也要考虑老JDK的更新,Oracle老JDK升级维护发帖咨询也是要钱的。迁移,则要考虑老代码兼容性、更新代码成本,运维风险,用这些与JVM变更带来的性能提高,维护简化进行对比。
升级是大势所趋,无非早晚而已。
>>>码农N号
等你负责几个项目,jdk用的1.6,其他jar包也依赖的1.6,你会轻易换1.8, 11吗?低版本很多语法、类在高版本都废弃了,你敢换版本吗?
换句话说一个项目本来稳定的很,还有项目你只负责一部分,你敢冒着风险替换Java版本吗?你替换Java版本必然要替换到依赖Java版本的jar包。
当然阿里这些大厂会慢慢使用高版本的jdk,替换的话,反正他们有钱有人,换也正常不换也没事。
@ye_zhao
java中产生的随机数都是伪随机数吗?
Q:
java中Random类产生数是伪随机数,有什么办法可以实现真随机吗?还有有随机因子这个概念吗?有什么作用?希望大神们可以帮忙解答一下
A:
>>>tcxu
通过真实随机事件取得的随机数才是真随机数。因此,没有办法可以实现真随机数。只要这个随机数是由确定算法生成的,那就是伪随机。它看似随机实质是固定的周期性序列,也就是有规则的随机。
>>>Devoes
别说java,只要是传统计算机产生的随机数,一定是伪随机数。说到底只是用了一个非常复杂、周期很长的数学变换公式得到的。
>>>浣花孤叶
你们知识也太落后了。计算机完全可以通过收集外界的各种随机因素产生真随机数,例如用户按键的时间、网络延迟之类的。操作系统有一个叫熵池的概念,可以用来产生随机数,大体上就是这个原理
听过一个说法,唯一的真随机数是宇宙微波背影辐射
>>>银杏果果
真随机数是不存在的,任何算法都是伪随机数,不管是java还是其它计算机语言。
也就是说在计算机世界里,真随机数是无法自动产生的,包括硬件,而硬件驱动仍然是软件代码,再者你知道外界因素的情况下去确定随机数,此时或许就是一个必然事件,一个必然数,而不是随机数。包括现实世界,我们也不一定能找到随机数,而只有随机事件,或许随机事件发生的时间点是随机数吧。忘记是一部电影还是真实事件,一个数学家总想用数学知识解决一切发生或即将发生的事件,包括一切随机事件,……后面好像疯了。
职业生涯
问答
@myexam123
技术强的程序员,自己开发软件卖,不给人打工看人脸色,可行?
Q:
A:
>>>刘建业
不给人打工是可以的,不看人脸色?不存在的。打工受的那点气,和老板受的气比,那根本就不算什么。
>>>开源中国马桶盖
不可行..除非 你再某个行业里面 非常牛逼... 要不然你做出来的软件 没人要是真的..因为现在的客户都比较任性..都喜欢按照自己的规则做事,你没有非常强大的背景 以及非常大的名气 他们不会买你账的...要是 你能做到 在某个行业的行业软件中 你就是规则的化身,那么客户要让改东西的时候 你就可以非常强势的怼回去, 但是 你是吗?呵呵....
>>>netkiller-
你有多强呢?现在团队分工明确,各司其职。
你能搞定交换机配置?你能搞定运维吗?你能设计产品原型吗?你能平面设计吗?你能切图吗? 你能做前端开发吗?你能做后端开发吗?你能做 APP 开发吗?你能搞定市场吗? 你能搞定运营吗?
>>>阳光暖暖
可行,如果创业失败,需要借钱可以找我。我是贷款公司的
>>>苏大泉
观点很幼稚,技术强和自己做能成功是两会事,没有必然关系,最简单的判断方法 你看看公司老板有几个技术出身的
@石岩
如何招募创业合伙人?
Q:
现在想自己创业做互联网+大健康,如何招募创业的技术团队?
>>>牧野开源
这年头,有想法的人比精子还多,能让想法落地的人比卵子还少,再加上有些过河拆桥的创屎人造成的不良影响。就造成绝大多数想法会——然并卵。
>>>南山北寺
如果工资高的话就直接上招聘吧,如果待遇不咋的的话建议百度:如何画饼白嫖程序员。
>>>谢小呆
我之前在一家创业公司做技术“负责人”,被创业伤的技术人太多了,在简书上写了篇文章吐槽:https://www.jianshu.com/p/f1c438a06032。技术人想通过创业找到自己的突破口,而有想法的人更希望找到靠谱的技术人一起合作。差别在于有想法的人太多了,并不是每个想法都能落地,靠谱的技术人虽然也不算少,但是他们并不愁工作,所以如果想找到一个靠谱的技术人我认为起名要对你们未来要做的事有共同的愿景,就是我们常说的共祈愿景。
能不能把你的梦想影响身边的人,并且让这个梦想成为身边人的梦想,这是作为一个创业领导者第一步要做的。
@mojiayi
技术面试内容难道还有地域差别?
Q:
遇到好几个应聘者,面试过程中问了几个问题回答不上之后,跟我说不知道长沙的面试要求是什么,感觉和上海深圳的不一样,我也在上海呆过很多年,参加过不少面试,一个普通的java开发岗位面试内容大同小异。
我从来不问造火箭级别的问题,都是些市面上最主流最常见的拧螺丝级别的问题。工作几年都没有积累,说百度一下就知道了,我只能说回家等通知了。
A:
>>>木九天
现在最聪明的程序员不是你问一个面试题就能回答出来的问题,也不是说百度就能做出来,而是注重他的实际效率解决问题上,所以你要问的是思路,而不是会不会,百度上有能不能快速解决的问题。综上所述,你的面试并不是完美。
>>>百度得来终觉浅
问些实操题比较靠谱 有项目经历的人都会遇到 比如说什么内存泄漏啊 流水号自增不重复啊 什么的会不会 肚子有没有货一下就懂了 我的意思是你可以直接问一下你现在产品线里遇到的一些坑点 人家如果知道那就说明经验对口
文章出自:http://qh.itpxw.cn/peixun/software/201844698.html
文章标题:程序员能单干吗
免责声明:本站文章均由入驻起航学习网的会员所发或者网络转载,所述观点仅代表作者本人,不代表起航学习网立场。如有侵权或者其他问题,请联系举报,必删。侵权投诉
IT培训网 访问该机构站点 报名留言 加为好友 用户等级:注册会员
用户级别:10
机构名称:IT培训网
联 系 人:罗老师
联系电话:13783581536
联系手机:13783581536
在线客服:
在 线 QQ:
电子邮件:
网站域名:http://www.itpxw.cn
注册时间:2016-07-18 11:07
最后登录:2024-02-20 13:02
Java定义方法的格式是什么?IT培训网小编来告诉大家。所谓方法...
大家在Java教程中会学到关于Java消息推送的知识,那么,Java消息...
常用的Java日期格式转换有哪些?IT培训网小编来告诉大家。 1...
Java创建对象数组的方法是什么?IT培训网小编来告诉大家。Ja...