
一个会写诗的程序员
Interface was introduced in Java as a new programming feature. It describes CAN-BE instead of IS-A relationship.
image 今天,Kotlin 官方博客正式发布了 Kotlin 1.3,还附带了一些开源库、构建工具和学习资源。 在这次更新中,协程(Coroutines)特性已经稳定,它使得非阻塞代码易于读写,Kotlin 1.3 还带来了 Kotlin / Native Beta,它可将 Kotlin 代码直接编译为本机二进制文件,此外,Kotlin 的跨平台功能将为 Android 和 iOS 应用程序等组件之间共享业务逻辑,服务器也可以与 Web 和移动客户端共享逻辑,而且多平台库让日常的开发变得便捷。
Kotlin 开发者社区 国内第一Kotlin 开发者社区公众号,主要分享、交流 Kotlin 编程语言、Spring Boot、Android、React.js/Node.js、函数式编程、编程思想等相关主题。
image Kotlin 整体的发展速度还是让不少开发者为之兴奋。同时鉴于 JetBrains 和Google 的大力支持,以及开发者社区的热捧,我们也相信它会越来越流行。
文/江湖一剑客 以前读三字经,读到这样一句话:三才者天地人。当时就被古人的智慧所震惊。 “天”是指万物赖以生存的空间,日月星辰运转不息,四季更替不乱,昼夜寒暑依序变化。
纪念金庸。创造了整整一个江湖。一个江湖的时代落幕了。。。 金庸武侠小说中的绝美句子,至今都让人回味无穷—— 情不知所起,一往情深;恨不知所终,一笑而泯。 ——金庸《笑傲江湖》 红颜弹指老,刹那芳华,与其天涯思君,恋恋不舍,莫若相忘于江湖。
文/江湖一剑客 吃晚饭的时候和我大、我妈,用视频聊天。 在老家上床睡觉的时间早,刚吃完饭,收拾完,不到七八点就上床睡觉了。我的老父亲老母亲说过两天给我这边寄来点潮牌吃吃。
文/江湖一剑客 如今有越来越多的人感到迷失,我们年轻人不知道自己的未来究竟在哪里。 那么我们为什么会感到迷茫呢? 人类之所以会遭遇这种迷失和困惑,就是因为我们创造的这个世界看起来非常的虚假。
文/江湖一剑客 重新审视“天道酬勤” “你写PPT时,阿拉斯加的鳕鱼正跃出水面,你看报表时,梅里雪山的金丝猴刚好爬上树尖。你挤进地铁时,西藏的山鹰一直盘旋云端,你在会议中吵架时,尼泊尔的背包客一起端起酒杯坐在火堆旁。
文/江湖一剑客 活到老,学到老。 Stay Foolish, Stay Hungry. 为什么要学习? 终生学习,无疑是整个人类得以存在和发展的根基。
Overview of Kotlin & Comparison Between Kotlin and Java by Navdeep Singh Gill What is Kotlin? Kotlin is a new programming language from JetBrains.
文/江湖一剑客 读书学习的频率,思考力的高低,很大程度上决定了你的问题解决的能力,进而限制了你的人生格局,从而也基本上决定了你的人生命运。 独立之精神,自由之思想 陈寅恪给王国维的纪念碑撰文: 士之读书治学,盖将以脱心志于俗谛之桎梏,真理因得以发扬。
文/江湖一剑客 今天我们来讲一下工作的意义,以及工作、生活、人生的意义等相关话题。 首先,我们来想一个问题:你觉得人的一生该怎样度过呢? 你是想在悲伤苦痛中度过一生,还是想快乐地度过一生呢? 毫无疑问地,人性都是趋吉避凶,追求快乐幸福,挣脱苦痛的。
第13章 人生的追求与意义 《丰富多彩的编程世界》 丰富多彩的编程世界 作者 陈光剑 第1章 名可名非常名第2章 语言的构成第3章 有趣的编程第4章 编程语言大观第5章 编程语言的组成第6章 编程范式第7章 编程思想第8章 编程心理学第9章 程序员这群...
第12章 互联网创业神话 《丰富多彩的编程世界》 丰富多彩的编程世界 作者 陈光剑 第1章 名可名非常名第2章 语言的构成第3章 有趣的编程第4章 编程语言大观第5章 编程语言的组成第6章 编程范式第7章 编程思想第8章 编程心理学第9章 程序员这群人...
第11章 假如没有编程 《丰富多彩的编程世界》 丰富多彩的编程世界 作者 陈光剑 第1章 名可名非常名第2章 语言的构成第3章 有趣的编程第4章 编程语言大观第5章 编程语言的组成第6章 编程范式第7章 编程思想第8章 编程心理学第9章 程序员这群人...
第10章 程序员与诗人 《丰富多彩的编程世界》 丰富多彩的编程世界 作者 陈光剑 第1章 名可名非常名第2章 语言的构成第3章 有趣的编程第4章 编程语言大观第5章 编程语言的组成第6章 编程范式第7章 编程思想第8章 编程心理学第9章 程序员这群人第...
第9章 程序员这群人 《丰富多彩的编程世界》 丰富多彩的编程世界 作者 陈光剑 第1章 名可名非常名第2章 语言的构成第3章 有趣的编程第4章 编程语言大观第5章 编程语言的组成第6章 编程范式第7章 编程思想第8章 编程心理学第9章 程序员这群人第1...
第8章 编程心理学 《丰富多彩的编程世界》 丰富多彩的编程世界 作者 陈光剑 第1章 名可名非常名第2章 语言的构成第3章 有趣的编程第4章 编程语言大观第5章 编程语言的组成第6章 编程范式第7章 编程思想第8章 编程心理学第9章 程序员这群人第10...
第7章 编程思想 《丰富多彩的编程世界》 丰富多彩的编程世界 作者 陈光剑 第1章 名可名非常名第2章 语言的构成第3章 有趣的编程第4章 编程语言大观第5章 编程语言的组成第6章 编程范式第7章 编程思想第8章 编程心理学第9章 程序员这群人第10章...
第6章 编程范式 《丰富多彩的编程世界》 丰富多彩的编程世界 作者 陈光剑 第1章 名可名非常名第2章 语言的构成第3章 有趣的编程第4章 编程语言大观第5章 编程语言的组成第6章 编程范式第7章 编程思想第8章 编程心理学第9章 程序员这群人第10章...
第5章 编程语言的组成 《丰富多彩的编程世界》 丰富多彩的编程世界 作者 陈光剑 第1章 名可名非常名第2章 语言的构成第3章 有趣的编程第4章 编程语言大观第5章 编程语言的组成第6章 编程范式第7章 编程思想第8章 编程心理学第9章 程序员这群人第...
第4章 编程语言大观 《丰富多彩的编程世界》 编程语言虽然五花八门,千奇百怪,但是归根结底,编程语言最终的目标,本质上无非是回答两个问题: 如何表示信息 如何处理信息 无论是—— 面向过程的编程语言、 面向对象的编程语言、 函数式编程语言、 并行编程语言, 或者其他任何千奇百怪的编程语言 其根本性的终极目标,就是回答以上两个问题。
第3章 有趣的编程 《丰富多彩的编程世界》 丰富多彩的编程世界 作者 陈光剑 第1章 名可名非常名第2章 语言的构成第3章 有趣的编程第4章 编程语言大观第5章 编程语言的组成第6章 编程范式第7章 编程思想第8章 编程心理学第9章 程序员这群人第10...
第2章 语言的构成 《丰富多彩的编程世界》 丰富多彩的编程世界 作者 陈光剑 第1章 名可名非常名第2章 语言的构成第3章 有趣的编程第4章 编程语言大观第5章 编程语言的组成第6章 编程范式第7章 编程思想第8章 编程心理学第9章 程序员这群人第10...
第1章 名可名非常名 《丰富多彩的编程世界》 老子道德经有云:"道可道,非常道。名可名,非常名。" ▲道:句中第一、三两个“道”是名词,是指宇宙万物的本原、本体;第二个“道”字是动词,意思是“说出”。
丰富多彩的编程世界 作者 陈光剑 第1章 名可名非常名第2章 语言的构成第3章 有趣的编程第4章 编程语言大观第5章 编程语言的组成第6章 编程范式第7章 编程思想第8章 编程心理学第9章 程序员这群人第10章 程序员与诗人第11章 假如没有编程第1...
第1讲 快速开始 HelloWorld 第2讲 Kotlin 语法基础 第3讲 Kotlin 类型系统 第4讲 Kotlin 中的类与面向对象编程 第5讲 Kotlin 中的函数、Lambda与函数式编程 第6讲 扩展函数与属性 第7讲 集合类 第8讲...
文/江湖一剑客 在今天的这篇文章中,我们主要来探讨一下影响力。 什么是影响力 首先我们来看一下什么是影响力。 我们大家都公认的,一个人的价值往往体现在他被别人需要的程度上。
bootstrap-datetimepicker https://github.com/Eonasdan/bootstrap-datetimepicker/blob/master/src/js/bootstrap-datetimepicker.
文 / 江湖一剑客 穷可以说是人类生活状态中最普遍的一种状态了,而焦虑也是人类情感中最为普遍的状态之一。在今天的这篇文章中,我们主要来探讨一下什么是穷?穷是怎样导致焦虑,以及怎样从穷,变通发展,摆脱焦虑。
文/江湖一剑客 在当今时代,不会写作的你正在失去你的核心竞争力。 首先我们来看一下什么是写作。 写作既是生活也可以是职业。 我回想了一下,从小到大这20多年以来,我一直坚持做的事情就是没事看看书写写字。
夜空如此,安静,星光闪闪。 你是风,你是风中之风。 你是来自,宇宙深处的幽蓝。 你这个可爱的人儿 像一只小猫咪 在深夜里 化成了窗外的一缕清风 拥入胸怀 归 心归故乡 想象行走在 乡间恬静小路上 让那些疲惫的梦 都随风飞散吧! 不去想那些世俗 人来人往...
别问我靠什么谋生 我不感兴趣 我内心真正渴望的是什么 我是否有勇气 去追逐心中的渴望 别问我年龄 我不感兴趣 草木一秋 人生百年 蜉蝣掘阅 麻衣如雪 我只想知道 我是否愿意去用生命去冒险 为了爱 为了梦想 绽放生命芳华 当走到生命的终点 当所有的一切都...
致敬普吕多姆和阿多尼斯 也如这清晨的薄雾,如它温暖的丝线—— 我的诗歌只为你灵魂的黑夜而作 一经被人窥破,便要苍白失色 万物静默如斯,唯有孤独,恒常如新 世间绝美的东西一定是转瞬即逝的——正是因为这样的转瞬即逝才造就了绝美。
何当共剪西窗烛,看巴山上,呦呦鹿鸣。 却话巴山夜雨时,盼君归期,食野之苹。 青青子衿风中飘扬, 悠悠我心雨中凄凉。 但为君故沧海荒, 沉吟至今变田桑。 曾经沧海难为水,沧海月明珠有泪,泪雨零铃终不怨。
image 【中文翻译在后面】 Android developers love Kotlin. Google can tell us that 27% of the top 1,000 Android apps are built usin...
1 正确的努力,尝试拒绝不必要的东西 life is short , do what u want to do, just do it IS focused 注意力在哪里,生产力就在哪里 2 三级组织是共同规则。
image 导读:为了帮助广大创业者有针对性地提高BP撰写技能、提升融资成功率,疯狂BP将不定时挑选一些商业计划书(包含融资未成功与融资成功的),通过对BP中每一页的解读,来告诉你这份BP的好与不好(仅对BP的展示和语言的描述,不评价项目本身的商业模式)。
商业计划书(BP)是创业者靠谱而又有激情的“idea”+完整的逻辑表达,甚至成为初创公司与投资机构交流的重要载体,决定了VC对于该项目的第一印象,有时甚至成为初创公司是否能够融资的关键因素。
Rise of Kotlin: The Programming Language for the Next Generation https://hackernoon.
一切皆是映射. 映射即流. 流即函数. 3个计算模型: 赋值模型 循环和递归 异步和并行 1个结构: 树结构. 队列,栈,数组,链表,树,图等等,都是树.映射树.字典. HashMap. 一切皆是树.计算就是树的生长跟消亡的变换过程. 程序的行为,分为编译期和运行期。
图片发自简书App 图片发自简书App 图片发自简书App
image.png image.png image.png image.png image.png 参考资料: 1.
图片发自简书App 图片发自简书App 图片发自简书App 图片发自简书App 图片发自简书App 图片发自简书App 图片发自简书App 图片发自简书App 中国历史和世界史横向对照表,收藏了长知识。
图片发自简书App 图片发自简书App 图片发自简书App
...... ...... .
图片发自简书App 图片发自简书App 图片发自简书App 图片发自简书App 图片发自简书App 又是一个秋夜 我在听秋虫鸣 夜渐深了 我在听秋虫鸣 人睡到忘记这个真实世界的时候 就会有另外...
归 心归故乡 想象行走在 乡间恬静小路上 让那些疲惫的梦 都随风飞散吧! 不去想那些世俗 人来人往 熙熙攘攘 秋日午后 阳光下 细数落叶 来日方长 世上的路 有诗人、浪子 歌咏吟唱 世上的人 在欲望、信仰中 彷徨 彷徨又迷茫 亲爱的人儿 快结束那 无休...
[SOLVED] Caused by: java.awt.HeadlessException when trying to create a SWING/AWT frame from Spring Boot In Spring Boot, when y...
Jdbctemplate 有缓存机制?
java.lang.ClassCastException: org.crm.rulescenter.provider.config.DroolsAutoConfiguration$1 cannot be cast to org.drools.compiler.kie.builder.impl.InternalKieModule
MYSQL获取自增ID的四种方法
2.SELECT LAST_INSERT_ID() 函数
LAST_INSERT_ID 是与table无关的,如果向表a插入数据后,再向表b插入数据,LAST_INSERT_ID会改变。
在多用户交替插入数据的情况下max(id)显然不能用。这时就该使用LAST_INSERT_ID了,因为LAST_INSERT_ID是基 于Connection的,只要每个线程都使用独立的 Connection对象,LAST_INSERT_ID函数将返回该Connection对AUTO_INCREMENT列最新的insert or update 操作生成的第一个record的ID。这个值不能被其它客户端(Connection)影响,保证了你能够找回自己的 ID 而不用担心其它客户端的活动,而且不需要加锁。使用单INSERT语句插入多条记录, LAST_INSERT_ID返回一个列表。
@@identity 是表示的是最近一次向具有identity属性(即自增列)的表插入数据时对应的自增列的值,是系统定义的全局变量。一般系统定义的全局变量都是以@@开头,用户自定义变量以@开头。
比如有个表A,它的自增列是id,当向A表插入一行数据后,如果插入数据后自增列的值自动增加至101,则通过select @@identity得到的值就是101。使用@@identity的前提是在进行insert操作后,执行select @@identity的时候连接没有关闭,否则得到的将是NULL值。
得出的结果里边对应表名记录中有个Auto_increment字段,里边有下一个自增ID的数值就是当前该表的最大自增ID.
B 树
即二叉搜索树:
1. 所有非叶子结点至多拥有两个儿子( Left 和 Right );
2. 所有结点存储一个关键字;
3. 非叶子结点的左指针指向小于其关键字的子树,右指针指向大于其关键字的子树;
B- 树
是一种多路搜索树(并不是二叉的):
1. 定义任意非叶子结点最多只有 M 个儿 子;且 M>2 ;
2. 根结点的儿子数为 [2, M] ;
3. 除根结点以外的非叶子结点的儿子数为 [M/2, M] ;
4. 每个结点存放至少 M/2-1 (取 上整)和至多 M-1 个关键字;(至少 2 个关键 字)
5. 非叶子结点的关键字个数 = 指向儿 子的指针个数 -1 ;
6. 非叶子结点的关键字: K[1], K[2], …, K[M-1] ;且 K[i] < K[i+1] ;
7. 非叶子结点的指针: P[1], P[2], …, P[M] ;其中 P[1] 指向关键字小于 K[1] 的子树, P[M] 指向关键字大于 K[M-1] 的子树,其它 P[i] 指 向关键字属于 (K[i-1], K[i]) 的子树;
8. 所有叶子结点位于同一层
B+ 树
B+ 树是 B- 树的变体,也是一种多路搜索 树:
1. 其定义基本与 B- 树 同,除了:
2. 非叶子结点的子树指针与关键字个数相同;
3. 非叶子结点的子树指针 P[i] , 指向关键字值属于 [K[i], K[i+1]) 的子树( B- 树是开区间);
5. 为所有叶子结点增加一个链指针;
6. 所有关键字都在叶子结点出现;
如:( M=3 )
B+ 的搜索与 B- 树也基本相同,区别是 B+ 树只有达到叶子结点才命中( B- 树可 以在非叶子结点命中),其性能也等价于在关键字全集做一次二分查找;
B+ 的特性:
1. 所有关键字都出现在叶子结点的链表中(稠密索引),且链表中的关键字恰好是有序的;
2. 不可能在非叶子结点命中;
3. 非叶子结点相当于是叶子结点的索引(稀疏索引),叶子结点相当于是存储(关键字)数据的数据层;
4. 更适合文件索引系统;
B 树:二叉树,每个结点只存储一个关键字,等于则命中,小于走左结点,大于走右结点;
B- 树:多路搜索树,每个结点存储 M/2 到 M 个关键字,非叶子结点存储指向关键字范围的子结点;
所有关键字在整颗树中出现,且只出现一次,非叶子结点可以命中;
B+ 树:在 B- 树基础上,为叶子结点增加链 表指针,所有关键字都在叶子结点中出现,非叶子结点作为叶子结点的索引; B+ 树总 是到叶子结点才命中;
B* 树:在 B+ 树基础上,为非叶子结点也增 加链表指针,将结点的最低利用率从 1/2 提高到 2/3 ;
这是因为他们两个都有相同的 JVM 签名。
当运行时,泛型信息是会被擦除的。所以,运行时这两个函数是一样的签名。
这不是 Kotlin 的问题,而是将他们编译成 Java 字节码的结果。
这只是 Java 的流毒影响 Kotlin 执行的一种方式。
Java 编程思想
Kotlin 实战
Kotlin极简教程。
深入理解linux内核
图解Linux 内核源码。
Java基础知识:
Java集合类(Array,Set,Map, List等) 与 泛型。
JVM (内存分区,GC算法,内存调优,避免频繁的GC等)
Java 多线程(线程并发,线程通信等,java集合类中有线程相关的集合实现)
Java IO(File, Socket, NIO, AIO, Netty)
Java序列化(和远程通信相关)
反射 注解 等。Classloader 加载原理。
设计模式(AOP, Proxy, Factory, Singleton, Strategy等)
Web开发方向servlet是基础,现代意义上的Web开发一般不会直接使用jsp做显示层。需要做前后端分离,前后端mvc,因此从java后端来说需要掌握:
Servelt
Filter
开发框架如Spring (核心是设计模式)
数据库(操作,并发,事务,分库分表,SQL优化等)
Kotlin是什么
当下互联网大数据云计算时代,数以百万计的应用程序在服务器、移动手机端上运行,其中的开发语言有很大一部分是用流行软件界20多年的、强大稳定的主力的编程语言Java编写。
如果我们用一辆汽车来比喻编程语言的话,Java 拥有一个快速、可靠的发动机,但防抱死刹车系统,动力转向系统却不是那么地完全可控。驾驶起来得小心翼翼地检查可能出现的空指针,处理检查异常,重复生成冗长而单调的样板代码行等等。而编程语言的防危性(safety)和安全性(security)却又是至关重要的。
要是有一门语言,既能继承Java的所有优点特性及其背后强大完备的生态库,又能更加简单、安全可控,那真是再好不过了。
我们很高兴地看到,Kotlin就是这样一门语言。Kotlin是一门非研究性的语言,它是一门非常务实的工业级编程语言,它的使命就是帮助程序员们解决实际工程实践中的问题。使用Kotlin 让 Java程序员们的生活变得更好,Java中的那些空指针错误,浪费时间的冗长的样板代码,啰嗦的语法限制等等,在Kotlin中统统消失。Kotlin 简单务实,语法简洁而强大,安全且表达力强,极富生产力。
本章我们先简单介绍Kotlin语言的发展历史和语言特性,然后简述为什么要去学习Kotlin语言。最后,简要介绍JVM语言家族。
http://www.jianshu.com/p/20f8016e0545
用 原始root 空密码能连接--但是mysql里面之前新建好的数据库已经不存在--从这个信息看, 需要重新配一下user表. 登录名,密码信息可能也初始化了