首页
学习
活动
专区
工具
TVP
发布

带你撸出一手好代码

专栏作者
67
文章
88746
阅读量
26
订阅数
神奇的Java
使用java开发一个socket服务器,使用protocol buffer作为和客户端通信的数据格式。然后,问题就来了,这个socket服务器要如何调试?换句话说,服务器上的程序要怎么样才能跑出实际的效果。
用户1608022
2018-08-01
2650
做游戏与web的区别 - 服务器篇【1】
在一间游戏公司的两个部门待过, 前一个部门以做web开发为主,后一个部门做游戏开发,我在两边都是做后端的。
用户1608022
2018-08-01
2.3K0
觉得别人写的代码难以维护,应该吐槽吗?
写代码多年,接手过大量别的程序员写的系统。每接手一个系统我都要吐槽一番,代码写的烂,可读性差,不美观;用的语言有问题,不应该用PHP,应该用java或c#。反正任何别人写的系统并且由我接手的我都要批判一番,认为自己总能写的比他们好。
用户1608022
2018-08-01
4960
发现了一个vscode的bug
被一个BUG折磨了3个小时。我知道引起这个BUG的原因,是因为项目中某些配置文件中配置的程序包引用路径出错了,要解决这个问题很简单,只需要将这些配置文件中错误的程序包引用路径找出来并修改之就可以了。
用户1608022
2018-08-01
5250
使用Java内置的Http Server构建Web应用
一、概述 使用Java技术构建Web应用时, 我们通常离不开tomcat和jetty之类的servlet容器,这些Web服务器功能强大,性能强劲,深受欢迎,是运行大型Web应用的必备神器。 虽然Java的设计初衷就是用来开发大型应用的,然而有时候我们开发的程序只是简单的小型应用,对于功能的需求和性能的要求并不高, 可能仅仅就几百行甚至几十行代码,这个时候使用tomcat之类的Web服务器去运行就显得有点大材小用了。 比如说只是将数据库中的数据读出来转换成JSON,以Web服务的形式吐给调用方这样的阉割型W
用户1608022
2018-04-11
1.7K0
使用“空”对象替代引用是否为空判断
使用Null对象替代引用是否为空判断 编程语言中最常见运行时异常非NullPointerException莫属,只要程序依赖于外部的输入数据,比如说http请求传递的查询字符串参数、关系数据库连接、磁盘文件读取,空引用异常就无法避免。通常,程序需要满足某些条件才能正常的往下执行,假如这些条件依赖外部输入数据,而这些外部输入的数据肯定无法保证百分百不出错,比如说网络连接失败、数据库用户名密码错误等,当程序被这些节外生枝的障碍打断时,空引用异常就极有可能被引发。 比如说,原本我们调用一个方法,这个方法会执行连接
用户1608022
2018-04-11
7.5K0
写了一个bug,最后却变成了feature,要不要修呢?
事情是这样子的,前不久接到一个需求,为一个游戏开发礼包码功能 通常一款游戏运营期间会搞各种各样的活动吸引玩家,其中最常见的就是发放礼包, 玩家可以通过礼包码兑换礼包。 用礼包码兑换礼包有个一限制,游戏运营商不会让玩家无限制兑换, 针对某一次发放礼包的活动,一个账号只能兑换一次, 即使玩家手上有多个礼包码也不能多次兑换。 打个比方,某一款游戏搞活动向玩家发放礼包,这个礼包内总共有10000个礼包码, 玩家可以通过这些码去游戏中兑换。 参加活动的玩家每人手上只有一个礼包码,而某一个玩家通过某种方法拿到多个这
用户1608022
2018-04-11
6080
浅谈 var 关键字
提起 var关键子,程序员的第一反应就是JavaScript, 事实上这个关键子在其他语言中也有被采用。 比如说C#, 比如说kotlin, 用法和JavaScript中使用差不多,作为要声明变量的前缀 var myInt = 1; var myList = new List<String>(); var myValue = getValue(); 在其他语言中也有与var作用类似的关键字,比说C++中的auto,比如TypeScript中的let,比如kotlin中的val auto myInt = 1;
用户1608022
2018-04-11
9650
一种消除冗余html的思路
开发网站的时候,尤其是一些后台管理系统,会出现很多重复性工作,为追求方便快捷解决方法往往是简单粗暴的复制粘贴。复制粘贴会让代码散发出惹人讨厌的坏味道每个程序员都知道,但有时候除此之外别无解决方案,如项目中的html文件,除了头尾部份, 明明有很多冗余的代码存在于项目的html文件当中,但对于提取它们却总是束手无策。 这类代码即有html也有js html代码如,两张列表页面, 除了表的列数和具体的内容以外, html结构的规格都是相同的,但是我们在新建页面时,这类重复的table、tr、td总是不可避免的
用户1608022
2018-04-11
1.3K0
使用测试用例来约束自己的代码
写测试代码这种事情 ,以前只在网上和书上看到过, 自己从来没有写过。 每当看到那些世界顶级程序员编写的技术书籍中出现“测试用例”“测试代码”的字样或者一些行业的鼎鼎大名的技术大牛们提及写测试的重要性的时候,我的心里就会产生一种自己编的一定是假程的错觉, 为什么我写代码就从来不用那玩意? 就拿开发一个MVC框架的Web应用程序设来说, 通常的做法就是新建一个控制器和一个模型, 把代码要实现功能的业务逻辑写在模型里面,控制器调用模型, 假如有外部参数则接收参数传递给模型, 假如业务逻辑过于复杂导致模型过于臃肿或
用户1608022
2018-04-11
1.4K0
kotlin, 一种新的android平台一级开发语言
今天看到一则科技新闻, 大致内容是google将kotlin语言作为android应用开发的一级语言, 与java并驾齐驱, 这是一个开发界的大事件大新闻, 连google的亲儿子go语言也没有这种待遇, 而kotlin貌似名不见经传,之前根本连听都没听说过。 这让我对kotlin产生了极大的好奇心,这种能让得到google如此宠幸的语言到底是何方神圣? 在网上查了相关资源后, 对kotlin有了粗略的了解。 kotlin是一种jvm平台语言, kotlin编译器会将kotlin代码转换成jvm字符码,
用户1608022
2018-04-11
1.1K0
编程语言之间的差别真有那么大吗?
软件开发是一种特殊的职业,特殊到有点匪夷所思,行业从业人员的工种分类非常的不稳定, 比如说古时候有C工程师、C++工程师、VB工程师,后来有了Java工程师、.net工程师、php工程师, 再后来又有了前端开发工程师、nodejs工程师、 golang工程师、python工程师什么的, 反正每隔个几年就会莫名其妙的蹦出来几种新的软件开发职业,让一批又一批的人趋之若鹜。然后这些不同的职业却又干着一些相互重叠的事情, 比如说网站,Java、.net、php工程师都可以做;比如客户端软件,C++、VB、Java、
用户1608022
2018-04-11
1.1K0
nodejs与前端js的区别
很多前端程序员想玩nodejs开发,认为这是前端的一股趋势, 但真正能从前端js过渡到nodejs的却是凤毛麟角, 而看似和nodejs扯不上关系的后端程序员反而玩的不亦乐乎。 这于理不合, 写js向来是前端程序员的拿手好戏, 但为什么一碰到nodejs, 前端程序员反而不知所措了呢? 因此我认为, 前端开发中使用的js和nodejs之间,重点不是js,而是利用js开发的程序的种类的区别。 进行前端开发工作需要掌握技能有html、 css、js以及各种前端框架,把这些技术玩6就可以成为一名合格的前端开发工作
用户1608022
2018-04-11
4.4K0
JavaScript消除游戏实现思路讲解
之前讲解过一款JavaScript贪食蛇游戏详细的设计与实现,但是以那种方式进行描述 , 整篇文章会显得复杂冗长,除非深入细致的阅读和思考,否则文中内容并不容易理解。这次换一种方式讲解一款JavaScript消除游戏的设计,文章只描述游戏的实现思路,不涉及代码的细节, 具体的实现细节, 读者可以通过文末链接下载代码样例进行深入探究。 简单的消除游戏的实现并不涉及复杂的算法, 使用常规的前端编程思路即可实现游戏。 核心思路概括描述就是:「操纵一个对象数组,将数组的变化映射到html游戏界面上」 [[1,2,3
用户1608022
2018-04-11
1.2K0
比特币解密
截至我写这篇文章的时刻,1个比特币价值14194.26美元,也就是人民币91704.85元,这个世界上没有一个国家的流通货币拥有如此高的价值。 比特币到底是个什么东西? 能卖的这么贵,接下来就为大家细致讲解。 先说我们现实世界中的流通货币。 举个例子,马云写了一张字条,上面有"凭此条可到阿里巴巴马云办公司兑换人名币一万元"的字样,并有马云的签字盖章,那么这张字条多半是值一万元的,因为我们相信这张字条能换回来这么多钱。 我们通常使用的货币也有相同的作用, 假如你做买卖,一老外是你的顾客,他要买你的东西,可
用户1608022
2018-04-11
1.4K0
深入理解final关键字
通常我们对Java中final关键字的理解是“用final修饰的变量是不可变的”,如果尝试对final变量多次赋值,编译器将报错。似乎final的作用就是保证变量不可变,这没有错,但是如果我们在Java中灵活应用final的被修饰目标不可变的特性,往往能发掘出很多令人意想不到的效果,而非仅仅保证变量不可变这么粗浅而已。下面我们来说说final关键字的多重用法 一 用final修饰普通变量通常分为两种情况,修饰普通基本类变量和修饰引用类型变量,也就是对象类型变量。 修饰普通基本类型变量最能清楚直白的表现出fi
用户1608022
2018-04-11
6860
到底该不该使用存储过程
看到《阿里巴巴java编码规范》有这样一条 关于这条规范,我说说我个人的看法 我觉得用不用存储过程要视所使用的数据库和业务场景而定的,不能因为阿里巴巴的技术牛逼,就视他们的手册里的每一项规范为圣经,
用户1608022
2018-04-11
1.4K0
不管你信不信,反正我信了
很多程序员, 包括我自己, 在职业生业道路上前进时会陷入一个误区, 认为对程序员而言最重要的是技术,因而不断的提升技术水平来武装自己。 他们写代码是以技术为驱动的,比如说在项目中使用XX高端的技术,实现XX设计模式、精妙算法。 这没有什么问题,追求技术水平的提高是好事, 能更好的解决问题,能提升自身的行业竞争力。 但是, 在追求技术的过程中,不能忽略掉一样更加重要的事物。 程序员写代码的目的是什么? 毫无疑问,是创造出用户喜爱的软件, 这才是程序员这个职业存在的终极意义。 假如程序员写一个软件,这个软件却
用户1608022
2018-04-11
5520
浅谈比特币
最近比特币以及各种数字货币火的不行,区块链这个概念也三天两头霸占各种科技头条。以前虽然经常能听到「比特币」这个字眼,可完全没有足够的诱惑力吸引到我, 直到最近,因为曝光度实在太大,频繁出现在我的电脑和
用户1608022
2018-04-11
1K1
Java并发编程之守护线程(短文)
Java多线程中有一种线程叫做守护线程。我们可以通过一个比喻来理解守护线程。通常,一般工厂都会聘请一批保安,保安的职责是维护工厂的治安,保护工厂的财产,保安的职责就是守护工厂。但是,假如工厂倒闭了, 那么保安也就没有必要存在了。 保安相对于工厂,从某种程度上看就是守护线程相对于Java程序。假如有一条守护线程在一个Java程序中运行,如果程序的主线程退出,那么不管守护线程有没有执行完毕,也会跟随主线程一同退出。 创建守护线程只需要在创建普通线程的基础上调用setDaemon方法, 并设置唯一的参数为true
用户1608022
2018-04-11
7390
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档