java項(xiàng)目的大小衡量標(biāo)準(zhǔn):
成都創(chuàng)新互聯(lián)公司是一家集成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、網(wǎng)站頁面設(shè)計(jì)、網(wǎng)站優(yōu)化SEO優(yōu)化為一體的專業(yè)網(wǎng)絡(luò)公司,已為成都等多地近百家企業(yè)提供網(wǎng)站建設(shè)服務(wù)。追求良好的瀏覽體驗(yàn),以探求精品塑造與理念升華,設(shè)計(jì)最適合用戶的網(wǎng)站頁面。 合作只是第一步,服務(wù)才是根本,我們始終堅(jiān)持講誠(chéng)信,負(fù)責(zé)任的原則,為您進(jìn)行細(xì)心、貼心、認(rèn)真的服務(wù),與眾多客戶在蓬勃發(fā)展的市場(chǎng)環(huán)境中,互促共生。
微型:只是一個(gè)人,甚至是半日工作在幾天內(nèi)完成的軟件; ?
小型:一個(gè)人半年內(nèi)完成的?2000?行以內(nèi)的程序;
中型:?5?個(gè)人在?1?年多的時(shí)間內(nèi)完成的?5000-50000?行的程序;
大型:?5-10?人在兩年內(nèi)完成的?50000-100000?行的程序;
甚大型:?100-1000?人參加用?4-5?年完成的具有?100?,?0000?行的軟件項(xiàng)目;
極大型:?2000-5000?人參加,?10?年內(nèi)完成的?1000?萬行以內(nèi)的程序;
以上摘自:《軟件工程概論》???鄭人杰、殷人民編
這樣的觀點(diǎn)是以代碼行作為計(jì)量標(biāo)準(zhǔn)的,認(rèn)為代碼行多的自然項(xiàng)目也就大了。
什么項(xiàng)目300行可以搞定?
你這樣的提問就是讓別人去網(wǎng)上貼一段代碼過來,還不如讓別人給你介紹幾個(gè)網(wǎng)站來看的好,建議去看看JAVA社區(qū)的東西,蠻有幫助。
300行能干啥啊,你還不如自己做做練習(xí)題。
package suoha;
import java.util.ArrayList;import java.util.Random;
public class MainFunction {
private ArrayListMyCard cards = new ArrayListMyCard();
private int[] cardNumArr = new int[52];
private int[] mycards = new int[5];
private int[] p1cards = new int[5];
public static void main(String[] args) {
MainFunction mainfunc = new MainFunction();
mainfunc.makeCards();
mainfunc.cardNumArr = mainfunc.shuffleCards(mainfunc.cardNumArr);
mainfunc.catchCards();
mainfunc.showAllCardsOfHand();
//mainfunc.printNums();
}
/**
* 洗牌
* @param cardNums
* @return
*/
private int[] shuffleCards(int[] cardNums){
int size = cardNums.length;
int[] returnNums = new int[size];
//System.out.println(cardNums[0]+"=========================");
Random rand = new Random();
for(int i=size-1;i0;i--){
int nextInt = rand.nextInt(i);
returnNums[size-1-i] = cardNums[nextInt];
cardNums[nextInt] = cardNums[i];
cardNums[i] = returnNums[size-1-i];
//System.out.println("suijishu:"+nextInt+"||zhi:"+returnNums[size-1-i]);
}
returnNums[size-1] = cardNums[0];
return returnNums;
}
/**
* 抓牌
*/
private void catchCards(){
for(int i=0;i5;i++){
mycards[i] = cardNumArr[2*i];
p1cards[i] = cardNumArr[2*i+1];
}
}
private void showAllCardsOfHand(){
System.out.print("你手中的牌是:||");
for(int i=0;i5;i++){
MyCard myCard = cards.get(mycards[i]-1);
System.out.print(myCard.toString()+"||");
}
System.out.println();
System.out.print("對(duì)家手中的牌是:||");
for(int i=0;i5;i++){
MyCard myCard = cards.get(p1cards[i]-1);
System.out.print(myCard.toString()+"||");
}
}
/**
* 顯示牌的順序
*/
private void printNums(){
for(int i=0;icardNumArr.length;i++){
System.out.print(cardNumArr[i]+",");
}
}
/**
* 制作卡片
*/
private void makeCards(){
for(int i=1;i=13;i++){
for(int j=1;j=4;j++){
//System.out.println((i-1)*4+j);
MyCard card = new MyCard((i-1)*4+j, j, i);
cardNumArr[(i-1)*4+j-1] = (i-1)*4+j;
cards.add(card);
}
// MyCard card1 = new MyCard((i-1)*4+1, 1, i);
// MyCard card2 = new MyCard((i-1)*4+2, 2, i);
// MyCard card3 = new MyCard((i-1)*4+3, 3, i);
// MyCard card4 = new MyCard((i-1)*4+4, 4, i);
// cards.add(card1);
// cards.add(card2);
// cards.add(card3);
// cards.add(card4);
}
}
}
以1000行為準(zhǔn),超過千行就要考慮類拆分了。
類的代碼行數(shù)沒有特定的行數(shù)限制規(guī)范。根據(jù)實(shí)際情況決定。
對(duì)于經(jīng)常使用的java類,代碼行數(shù)應(yīng)該盡可能的少,這樣能減少java類的加載時(shí)間,減少內(nèi)存頻繁占用和回收。如果類過大,java類加載會(huì)耗時(shí)并且占用內(nèi)存大。容易引起內(nèi)存回收。