Giter Site home page Giter Site logo

coding2017's Introduction

2017编程提高社群

2017编程提高社群代码仓库所在地

coding2017's People

Contributors

844028312 avatar blindingdark avatar china-kook avatar diliuzuzhanghao avatar donaldy avatar gaodekui avatar gqipan avatar greastate avatar guodongym avatar harryhook avatar honokabiu avatar jayzyyzyy avatar jiangshaojie avatar jodie-zss avatar luoziyihao avatar macvis avatar miniyk2012 avatar mr-changk avatar nusubmarine01 avatar onlyliuxin avatar onlylyj avatar viscaria233 avatar wizardzhang2017 avatar wrecksoul avatar yangyangxu2016 avatar zavier avatar zhanglifeng avatar zhijiaxinyu avatar zhiyuan0101 avatar zjhylove avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

coding2017's Issues

关于分组的思考

第一季已经结束了,我统计了下, 获得代码坚持奖(每次作业都完成的), 第一个月:134人 , 第二个月和第三个月只剩50多个人。 考虑到第一季有700多人, 这样的数字惨不忍睹。
可见能坚持着完成作业的实在太少。 有趣的是,随着人数的减少,每个获得的奖学金增多了, 第三个月每个人有90元。

第一季分组的目的有这么几个:

  1. 减轻我的工作量, 组长帮助督促完成作业, 统计该组的作业完成情况。
  2. 在小组内沟通和交流会更有效率

实际情况不尽如人意,每个小组内完成作业的人太少了, 很多组长非常尽心,在多次群里艾特全体人员,甚至发红包都无法真正的激活小组成员。

我在想学习还得靠自觉 , 外界的刺激是不管用的。

所以分组实际上没什么意义了。第二季该怎么办? 大家有什么好建议?

正版软件的开源替代

公司是上市公司,要求电脑中的软件使用正版。如office、ps之类的都需要申请,一般申请不到。
java开发中有一些软件自己都是破解的,有没有一些免费的开源替代产品。
eg:

收费产品 开源产品 备注
MyEclipse Eclipse
Office WPS、OpenOffice WPS商业版任然要收费
EA/Visio startUML
MarkdownPad2
Navicat

请补充......

在web开发中(基于MVC框架)如何写出符合OOD的代码?

今天跑公司看了下自己写的代码,基本都是面向过程的代码,完全没有体现OOD**,可能是由于公司项目需求少,较少更改,所有我们也没太关心这些,现在我像提高自己的编程**,希望老师能抽空讲一讲在web开发中如何写出符合OOD的代码。

如何优雅地使用 Github?

Github 是全球最大的开源社区,使用 Github 可谓是程序员的必备技能,Github 最著名的是其基于 Git 的版本托管服务。你可以提交你的项目代码,可以 Fork, Watch 其他优秀的项目。大家有关于使用 Github 的教程和经验可以一起分享,我自己先分享两个自认为还不错的。

Issues 使用小贴士

首先 Issues 的功能是用来讨论某个问题的。
它不是贴吧或者灌水的论坛。
所以,不要在讨论中出现任何无助于他人获取解答的内容
反例:

回复:这个问题我不会。
回复:感谢楼主。
回复:楼主好人。
回复:支持!

正例:

提问:本期第三次作业中某段代码的 Bug
正文:在运行至某某循环时(代码如下),结果与期望值不同,请问如何解决此问题?

while(flag){
    someFoo();
}
someBar();

回答:可能是 flag 被其他线程修改,尝试加锁。
下面的代码也许会对你有帮助。

synchronized(key){
    while(flag){
        someFoo();
    }
}
someBar();

要点:提问要详细描述问题,回答要明确说明思路。

然后,不要在这里做实验。
不要用它来随便写无关的内容,如果你想测试 Issues 的用法,请在自己仓库做测试!

进阶

如果你想创建一个漂亮的 Issues,那么你需要学习一下 Markdown。
它是一种标记语言,Github 中的各种地方都使用它来进行文字样式排版。
它很好上手,具体内容请自行学习。
不过这里说一下贴代码的姿势。
请使用三个反引号后跟语言名开头,三个反引号结尾,来包裹代码片段。

```java
public static void main(String[] args){
}
```

将上面的文字直接在 issues 输入,然后点击 编辑框 上面的 Preview 来预览结果。最后点击右下角绿色提交按钮提交。
这样一个漂亮的代码段就完成了。

P.S.. 反引号是啥自行搜索

关于编程能力提升群第二季

1. 不再分组
根据第一季的经验, 有问题都在大组提问了, 小组群内的讨论实在太少,一片沉寂,没有存在的价值。

2. 数据结构的作业

我还会持续地发布/讲解数据结构作业
由于人数很多, 作业我没有办法全看一遍, 但是欢迎自荐作业,我会在讲解的时候拿来给大家分享
作业会发布在github上,具体的路径随后发布, 想自荐的需要像我发出pull request
第一季的数据结构作业我也会整理下,一并发出来,对于新加入群的也欢迎做一做
作业全凭自觉,不再评选代码坚持奖。

3. 付费鼓励大家分享

Teach others 是最有效的学习, 所以付费鼓励各位在这个QQ群讲课。
每讲一次暂定为666元。
针对一个主题,或者知识点的讲解, 时间一个小时就好
要求对这个知识点有充分的了解,如果是工作中使用过的最好。
想讲课的话可以给我说下, 我会和你一起准备下,确保质量。

4. 抓狂的提议: 鼓励大家出题
每次我讲完课之后,会就这个主题布置基本作业,也欢迎大家也来布置作业,任何人都可以出题当老师!其它人完成别人布置的作业,然后交流讨论。

为了方便查找,为这些自布置作业单独建立一个 Github 仓库,仓库中没有实质内容,只有一个 readme 用来简单介绍守则。作业发布在 Issues 里面。大家自由出题,都体验一把老师的感觉,不用怕题目出的不好。

每个月搞一个最受欢迎出题人,最活跃答题人评选, 奖金暂定2000元

JavaBean 是如何用的?

POJO,VO,BO,PO,各种O...
我目前的情况:
系统场景:每个数据库表对应一个Bean,举例:项目信息表(prjInfo)->项目实体bean(PrjInfoBean)
我的问题:因为这个PrjInfoBean贯穿dao层,service层,action层,然后到jsp去显示一些属性,所以这个PrjInfoBean很冗余,甚至把其他表的字段或属性(比如用户名,订单金额)的属性也加到自己的bean属性中,比如username,orderSum,等,最后发现,原来对应数据库表的一个实体bean,变得很臃肿庞大,甚至还有一些方法比如对于金额的转换也加在bean的方法中。
我的想法:我觉得应该有更好的实现方式,能够不让一个bean如此臃肿,但是一时也想不出如何来做,是通过拆分?还是怎样?

请大家给出出主意,谢谢!
刘老师给支个招吧

讨论一个在项目中常见的需求(已抽象成一个大家能懂的事情),需要怎么设计或者下面的代码应该怎么重构。

// 一个无性别全自动公共厕所有一个这样的需求:
//1.假设进入 wc 的人,每人有一个带有自己身份的卡片,进入 wc 需要刷卡并提示先生/女士 你好!
//2.进入 wc 时要自动出现"站着" 或者是"坐着" 的 工具(不太准确)。

public class Test2 {

@Test
public void test() {
	// 刷卡
	People people = shuaCard();

	// 进入 wc
	goinWc(people);

	// 3.假如再增加一个需求,走出 wc 时 提示 先生/女士” 下次光临,就要再写一段 if(){}else{}
}

public People shuaCard() {
	People people = new People();
	if (people.getGender()) {
		System.out.println("先生你好");
	} else {
		System.out.println("女士你好");
	}
	return people;
}

public void goinWc(People people) {
	if (people.getGender()) {
		System.out.println("站着的");
	} else {
		System.out.println("坐着的");
	}
}

}

class People {
/**
* true 代表男,false 代表女
*/
boolean gender;

public boolean getGender() {
	return gender;
}

}

关于数据库的学习

有很多种数据库,到底该学哪一个?有什么好的学习方法吗?另外如果以后想做DBA该怎么学习充实自己?

有一段java代码 需要 大家来分析,很有价值的

``package com.ibmlearn_homwork2;

import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;

import java.io.File;
import java.util.Iterator;

/**
 * Created with IDEA
 * Created by fuyi.ren on 2017/6/11  13:06
 * Description: 写Dom4jUtils工具类,提供外部使用
 */
public class Dom4jUtils
{

     private  static Document document;
    /**
     * @param pathname  /src/com/ibmlearn_homwork2/struts.xml
     * @return  Document 对象
     * @throws Exception
     */
    public  static  Document  readXML(String pathname)throws  Exception{
        //创建SAXReader对象
        SAXReader reader = new SAXReader();
        //读取文件 转换成Document
        Document document = reader.read( new File(pathname) );
        return  document;
    }

    /**
     * 通过节点标签名称,获取某个节点对象
     * @return
     */
    public  Element analyNode(String name){
        // 首先获取根节点
        Element root = document.getRootElement();
        // 遍历所有子节点---然后又遍历子节点
        return  analyNode(root,name);
    }



    /**
     *
     * 需求:每个节点只出现一次,不会出现重复,要求效率高
     * @param node  父节点对象
     * @param name  查找节点标签名称
     * @return 返回该节点对象
     */
    public  Element   analyNode(Element node, String name)
    {
        /**
         *   需要大家 来写了,!!!很有帮助的撒
         */


    }


}

招聘需求

有点标题dang了,群里有想换工作的和招聘需求的都来逛逛,自己人质量有保证。。。

本帖一年开两次,一次开半年

第二季应当要有一个比较完整的实例

相比于第一季的松散结构,第二季最好有一个比较完整的案例,一步步慢慢推进重构,面向对象设计的方法。一个简单的结构例子在书本中已经有很多了,但整体把握的重构,难度会大上很多。这些参与性与学习性也会大幅度提高。

读取大数据量excel文件解决方案

一个约30万行数据的excel文件需要读取并存入数据库,并且需要对每行数据进行有效性校验,大家有什么好解决方案吗?这么多数据如果一次性读入内存,可能会造成内存溢出。

transience关键字 具体什么情况下会用到 能不能举个场景例子

查了资料是说

当对象被序列化时(写入字节序列到目标文件)时,transient阻止实例中那些用此关键字声明的变量持久化;当对象被反序列化时(从源文件读取字节序列进行重构),这样的实例变量值不会被持久化和恢复。例如,当反序列化对象——数据流(例如,文件)可能不存在时,原因是你的对象中存在类型为java.io.InputStream的变量,序列化时这些变量引用的输入流无法被打开。

那么这么做的意义是什么呢?望指教!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.