2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
सामग्रीसूची
सामग्रीसूची
(1) दत्तांशकोशनामकरणपरम्परा : १.
(4) अग्र-अन्त-पृष्ठ-अन्त-विनिर्देशाः : १.
(१) डाउनलोड् कृत्वा संस्थापनम् : १.
(२) नूतनं परियोजनां निर्माय स्वसहयोगिनः आमन्त्रयन्तु : १.
(3) अन्तरफलकदस्तावेजानां कृते विनिर्देशलेखनम्
4. Debug function (पृष्ठभागं ज्ञातव्यम्)
(एकः व्यक्तिः देशे आधिपत्यं कर्तुं न शक्नोति!!!)
विशिष्टानि सन्ति- १.
(1) Entity layer : entity layer विशिष्टानि वस्तुसत्ताः संगृह्णाति, यत् दत्तांशकोशे विद्यमानानां वस्तुनाम् अनुरूपं भवति ।
(2) DAO स्तरः : (द्वयोः स्तरयोः उपविभक्तुं शक्यते (dao इत्यस्य अन्तरफलकस्तरः तथा च dao इत्यस्य कार्यान्वयनस्तरः)) सः स्तरः अस्ति यः आँकडाधारेन सह अन्तरक्रियां करोति, यस्मिन् केचन आँकडाधारसंयोजनं, विलोपनं, परिवर्तनं, प्रश्नक्रियाः च सन्ति
(3) सेवास्तर (द्वयोः स्तरयोः (सेवा-अन्तरफलक-स्तरः तथा सेवा-कार्यन्वयन-स्तरः) उपविभक्तः भवितुम् अर्हति): मुख्यतया व्यावसायिकमॉड्यूलस्य तार्किक-अनुप्रयोग-निर्माणस्य उत्तरदायी
(4) नियन्त्रकस्तरः नियन्त्रकस्तरः विशिष्टव्यापारमॉड्यूलप्रक्रियाणां नियन्त्रणार्थं उत्तरदायी भवति, अग्रभागस्य अनुरोधं स्वीकुर्वन्, सेवास्तरं आह्वयति, द्वारा प्रत्यागतानां आँकडानां प्राप्तिं करोति सेवास्तरं, अन्ते च क्लायन्ट् प्रति विशिष्टानि पृष्ठानि दत्तांशं च प्रत्यागच्छति ।
(5) Util layer: tool layer सामान्यतया प्रयुक्तानि tool classes स्थापयति उदाहरणार्थं, केचन सामान्याः पद्धतयः util function इत्यस्य रूपेण लिखितुं शक्यन्ते, ततः समग्रं कोडं सरलीकर्तुं शक्यते ।
(6) अपवादस्तरः : भवान् एकीकृतं रिटर्न् अपवादस्तरं लिखितुं शक्नोति ।
(7) फ़िल्टर लेयर : फ़िल्टर लेयर, यथा एकरूपरूपेण परिचयप्रमाणीकरणं फ़िल्टर यदि फ़िल्टर न उत्तीर्णं भवति तर्हि केवलं अतिथिविधाने एव भविष्यति ।
DTO इति अग्रे-अन्त-अनुरोधेन प्रेषितः दत्तांश-संरचना ।
VO इति अग्रभागेन प्रेषितस्य अनुरोधस्य प्रतिक्रियारूपेण पृष्ठभागेन प्रत्यागतं प्रतिक्रिया ।
PO इति वस्तुसत्तायाः दत्तांशकोशवस्तुसारणीयाः च वास्तविकः पत्राचारः ।
व्यावसायिकप्रक्रियाप्रक्रियायां बीओ वस्तुसत्ता अस्ति ।
कृपया आङ्ग्लभाषायां नामकरणं कुर्वन्तु, न तु चीनीभाषायां पिनयिन्भाषायां।
सुलभं भवन्तु, न तु आडम्बरपूर्णम्।
साधारणनामस्य स्थाने कुब्जनामकरणस्य प्रयोगं कुर्वन्तु।
अन्तरालेषु रेखाविरामस्य उपयोगं कुर्वन्तु, दीर्घपरिच्छेदेषु न लिखन्तु।
टिप्पणीकृतः भवतु, न तु व्यक्तिवादी।
जावादेशे एव विशेषार्थाः येषां कीवर्ड्स, आरक्षितशब्दाः इत्यादीनां प्रयोगं न कुर्वन्तु! ! !
(१) सारणीनाम अद्वितीयं भवति, अनेकाः सारणीनामानि च एकमेव नाम उपयोक्तुं न शक्नुवन्ति ।
(2) सारणीनाम लघुाक्षराणां रेखांकनानां च संयोजनं भवेत् अर्थः स्पष्टः भवेत् "user_info" अथवा "tbl_user_info" इति।
(३) कीवर्डैः सह विग्रहं मा कुरुत,आरक्षितशब्दान् निष्क्रियं कर्तुं, यथा like, desc, range, match, delayed इत्यादयः, कृपया MySQL आधिकारिक आरक्षितशब्दान् पश्यन्तु ।
(4) दत्तांशकोशक्षेत्रनाम : अस्मिन् २६ आङ्ग्ल-अक्षराणि (अक्षर-संवेदनशीलाः) प्लस् अण्डरस्कोरः '_', यथा "user_id", "user_name", "user_password", "user_register_time", "user_login_time" इत्यादीनि सन्ति
(5) प्राथमिकं विदेशीयं च कुञ्जीविनिर्देशाः : १.
प्राथमिक कुञ्जी: pk_+सारणी नाम
उदाहरणतया:pk_main
विदेशीय कुञ्जी: fk_+दास सारणीनाम+_+मुख्यसारणीनाम
उदाहरणतया:fk_sub_main
(1) वर्ग टिप्पणी : १.
वर्गटिप्पण्याः (Class) मुख्यतया वर्गस्य उपयोगः किमर्थं भवति इति घोषयितुं उपयुज्यते, तथैव केचन सूचनाः यथा निर्माता, निर्माणतिथिसंस्करणं, संकुलनाम इत्यादयः:
/**
* @संस्करणम्: V1.0
* @लेखक: फेन्डो
* @ className: उपयोक्ता
* @packageName: उपयोक्ता
* @description: एषः उपयोक्तृवर्गः अस्ति
* @ data: 2024-07-01 12:20
**/
(2) विधि टिप्पणी (निर्माता): 1.1.
/**
* @लेखक: फेन्डो
* @methodsName: उपयोक्ता योजयतु
* @description: एकं उपयोक्तारं योजयन्तु
* @परम्: xxxx
* @return: स्ट्रिंग
* @क्षेपणम् : १.
*/
(3) कोड ब्लॉक टिप्पणी: भवतः कोडस्य कस्यचित् भागस्य उद्देश्यं व्याख्यातव्यम्
/**
* कस्यचित् उपयोक्तुः उदाहरणं कुर्वन्तु
* xxxxxxx
*/
उपयोक्ता उपयोक्ता = नवीन उपयोक्ता ();
(४) एकवाक्यटिप्पणयः : स्वस्य व्यक्तिगतसङ्केतं टिप्पणीं कुर्वन्तु
User user=new User();//एकं उपयोक्तारं उदाहरणं कुरुत
नामकरणं यथा अन्ये अवगन्तुं शक्नुवन्ति, उष्ट्रप्रकरणेन नामकरणं, लघुसंवेदनशीलं च भवतु।
यथा : UserController, FileController, BookService इति
यथा: getUserName (), userLogin (), getMessage ();
यथा : MAX_STOCK_COUNT / CACHE_EXPIRED_TIME
१) एकं वस्तु प्राप्तुं विधिः get इति उपसर्गः भवति ।२) बहुविधवस्तूनि प्राप्तुं पद्धतयः list इत्यनेन उपसर्गं कृत्वा बहुवचनेन समाप्ताः भवन्ति, यथा: listObjects३) सांख्यिकीयमूल्यानां प्राप्तेः विधिः गणनायाः उपसर्गः भवति ।४) सम्मिलनविधिः save/insert इत्यनेन उपसर्गः भवति ।५) लोपविधिः उपसर्गः remove/delete इति भवति ।६) परिवर्तितविधिः update इत्यनेन उपसर्गः भवति ।
१) Data object: xxxDO, xxx इति data table इत्यस्य नाम ।२) डाटा ट्रांसफर ऑब्जेक्ट् : xxxDTO, xxx इति नाम व्यावसायिकक्षेत्रेण सह सम्बद्धम् अस्ति ।३) प्रदर्शन वस्तु : xxxVO, xxx सामान्यतया जालपृष्ठस्य नाम भवति ।
विद्यमानवस्तूनाम् उपयोगः महत् जालम् अस्ति न्यायार्थं equals पद्धतेः उपयोगः अनुशंसितः ।
सकारात्मकं उदाहरणम् : १.(1) त्रुटिपरिधिं निर्दिशन्तु यदि द्वयोः प्लवकबिन्दुसङ्ख्यायोः अन्तरम् अस्मिन् परिधिमध्ये भवति तर्हि ते समानाः इति मन्यन्ते ।तारण एकः = १.०F - ०.९F ;तारण ख = ०.९F - ०.८F ;तारण diff = १ई-६F ;यदि ( गणित . अब्स् ( एकः - ख ) < diff ) {व्यवस्था . बहिः . println ( "सत्यम्" );}(2) मूल्यं परिभाषितुं BigDecimal इत्यस्य उपयोगं कुर्वन्तु, ततः प्लवमानबिन्दुसङ्ख्याक्रियाः कुर्वन्तु ।बृहत्दशमलव a = नूतनम् बिगदशमलव ( "1.0" );बृहत्दशमलव ख = नूतनम् बिगदशमलव ( "0.9" );बृहत्दशमलव c = नूतनम् बिगदशमलव ( "0.8" );बिगदशमलव x = एकः . घटयेत् ( ख );बिगदशमलव y = ख . घटयेत् ( ग );यदि ( x . compareTo इति ( य् ) == 0) {व्यवस्था . बहिः . println ( "सत्यम्" );}
परिचयकर्ता प्रकार | नामकरणनियमाः | उदाहरण |
संकुलम् | अद्वितीयस्य संकुलनामस्य उपसर्गः सर्वदा सर्वे लघु ASCII अक्षराः भवन्ति तथा च शीर्षस्तरीयं डोमेननाम भवति, प्रायः com, edu, gov, mil, net, org, अथवा आङ्ग्लभाषायाः द्विवर्णसङ्केतः यः १९८१ द्वारा निर्दिष्टस्य देशस्य परिचयं करोति ISO 3166 मानकम् । संकुलनामस्य अनन्तरं भागाः विभिन्नसङ्गठनानां आन्तरिकनामकरणपरम्परानुसारं भिन्नाः भवन्ति । एतादृशाः नामकरण-रूढयः विभागानां, परियोजनानां, यन्त्राणां, अथवा प्रवेशनामानां भेदार्थं विशिष्टनिर्देशिकानामानां रचनायाः उपयोगं कर्तुं शक्नुवन्ति । | com.sun.eng com.apple.quicktime.v2 edu.cmu.cs.बोविक.पनीर |
कक्षाः | नामकरणनियमाः : वर्गनाम संज्ञा भवति, मिश्रितप्रकरणस्य उपयोगेन, प्रत्येकस्य शब्दस्य प्रथमं अक्षरं दीर्घरूपेण भवति । भवतः वर्गनामानि संक्षिप्तं वर्णनात्मकं च स्थापयितुं प्रयतध्वम्। पूर्णशब्दानां प्रयोगं कुर्वन्तु, संक्षिप्तनामानि परिहरन्तु (यावत् संक्षिप्तनामस्य अधिकतया प्रयोगः न भवति, यथा URL, HTML) | class Raster; class ImageSprite; |
अन्तरफलकाः | नामकरणनियमाः : केसनियमाः वर्गनामसदृशाः सन्ति | अन्तरफलक RasterDelegate; interface Storing; |
विधिः | विधिनाम्नः क्रियापदः, मिश्रधातुः, प्रथमशब्दस्य प्रथमाक्षरं लघु, अनन्तरशब्दानां प्रथमाक्षरं च उदात्तम् ।उष्ट्रप्रकरणनामकरणम् | धावनं करोतु(); runFast (); getBackground (); |
चराः | चरनामानि विहाय वर्गाः, वर्गनित्यं च समाविष्टाः सर्वे उदाहरणानि मिश्रितरूपेण भवन्ति, प्रथमशब्दस्य प्रथमाक्षरं लघु, तदनन्तरं शब्दानां प्रथमाक्षरं च बृहत् भवति चरनामानि अण्डरस्कोर-चिह्नेन वा डॉलर-चिह्नेन वा न आरभणीयम्, यद्यपि वाक्य-विन्यासेन एतत् अनुमतम् अस्ति । चरनामानि ह्रस्वानि वर्णनात्मकानि च भवेयुः। चरनामानि सुस्मरणीयानि अर्थात् तेषां प्रयोजनसूचनार्थं चिन्वनीयाः । | सूची<User> userList; String उपयोक्तृनाम; |
नित्याः | वर्गनित्यस्य एएनएसआई स्थिरांकस्य च घोषणाः सर्वेषु बृहत् अक्षरेषु भवेयुः, यत्र शब्दाः अधोरेखाभिः पृथक् भवन्ति । (ANSI नित्यं परिहरितुं प्रयतस्व, येन सहजतया दोषाः भवितुम् अर्हन्ति) | स्थिर अंतिम int MIN_WIDTH = 4; स्थिर अंतिम int MAX_WIDTH = 999; स्थिर अंतिम int GET_THE_CPU = 1; |
क) GET: सर्वरात् संसाधनं प्राप्नुवन्तु। (चयनितक्रियारूपेण द्रष्टुं शक्यते)ख) POST: सर्वरे नूतनं संसाधनं रचयन्तु। (insert operation इति गणयितुं शक्यते)ग) PUT: सर्वरे संसाधनानाम् अद्यतनीकरणं कुर्वन्तु। (अद्यतनक्रियारूपेण द्रष्टुं शक्यते)d) DELETE: सर्वरात् संसाधनं विलोपयन्तु। (delete operation इति गणयितुं शक्यते)
code
:http स्थिति कोड message
: तदनुरूपं पाठविवरणसूचना data
list
dict
- {
- "code": 200,
- "message": "new user has created",
- "data": {
- "id": "user-4d51faba-97ff-4adf-b256-40d7c9c68103",
- "firstName": "crifan",
- "lastName": "Li",
- "password": "654321",
- "phone": "13511112222",
- "createdAt": "2016-10-24T20:39:46",
- "updatedAt": "2016-10-24T20:39:46"
- ......
- }
- }
(3) प्रतिक्रियास्थितिसङ्केतः
त्रुटि:
२XX सफलता
२०० ठीकम् (अनुरोधः सफलः) २.
२०४ सामग्री नास्ति (अनुरोधः सफलः अभवत्, परन्तु परिणामः न प्रत्यागतः)
२०६ आंशिकसामग्री (ग्राहकः संसाधनस्य भागं अनुरोधयति, सर्वरः सफलतया प्रतिक्रियां ददाति, संसाधनानाम् एकां श्रेणीं च प्रत्यागच्छति)
३XX पुनर्निर्देशनम्
३०१ स्थायिरूपेण चालनं (स्थायिपुनर्निर्देशनं) २.
३०२ प्राप्तम् (अस्थायी पुनर्निर्देशनम्) २.
303 अन्यं पश्यन्तु (अनुरोधस्य अनुरूपस्य संसाधनस्य कृते अन्यः URI अस्ति इति कारणतः GET इत्यस्य उपयोगः करणीयः इति सूचयति
याचितं संसाधनं प्राप्तुं निर्देशिता विधिः) २.
३०४ न परिवर्तितम् (सूचयति यत् यदा ग्राहकः संसाधनस्य सशर्तप्रवेशस्य उपयोगं करोति तदा सर्वरः संसाधनं अन्विष्यति, परन्तु अनुरोधस्य शर्ताः शर्ताः न पूरयन्ति । पुनर्निर्देशनेन सह तस्य किमपि सम्बन्धः नास्ति)
३०७ अस्थायी पुनर्निर्देशन (३०२ इत्यस्य समानार्थः) २.
4XX क्लायन्ट् त्रुटिः
४०० दुष्टानुरोधः (अनुरोधसन्देशे वाक्यविन्यासदोषः अस्ति)
४०१ अनधिकृत (प्रमाणीकरणस्य आवश्यकता अस्ति (प्रथमं प्रत्यागमनम्) अथवा प्रमाणीकरणं विफलम् (द्वितीयं प्रत्यागमनम्))
४०३ निषिद्धः (अनुरोधः सर्वरेण अङ्गीकृतः) ।
४०४ न लब्धः (अनुरोधितः संसाधनः सर्वरे न लभ्यते)
५XX सर्वर त्रुटिः
५०० आन्तरिकसर्वरदोषः (सर्वरः अनुरोधं निष्पादयति चेत् त्रुटिः अभवत्)
५०३ सेवा अनुपलब्धा (सर्वरः अनुरक्षणार्थं अतिभारितः अथवा अधः अस्ति तथा च अनुरोधं सम्भालितुं न शक्नोति)
दृष्टान्तरूपेण दर्शयतु : १. nginx इत्यस्य पूर्वनिर्धारितसीमा 1MB भवति, tomcat इत्यस्य पूर्वनिर्धारितसीमा च 2MB भवति यदा बृहत्तरसामग्रीस्थापनस्य व्यावसायिक आवश्यकता भवति तदा भवान् सर्वर-पक्षस्य सीमां वर्धयितुं शक्नोति ।
दृष्टान्तरूपेण दर्शयतु : १. try block इत्यस्मिन् return स्टेट्मेण्ट् सफलतया निष्पादितस्य अनन्तरं तत्क्षणमेव न आगच्छति, परन्तु finally block इत्यस्मिन् स्टेट्मेण्ट् निष्पादयितुं निरन्तरं भवति यदि अत्र return स्टेट्मेण्ट् अस्ति तर्हि इदं प्रत्यक्षतया अत्र प्रत्यागमिष्यति, निर्दयतापूर्वकं return point इत्यत्र परित्यजति try block इति ।
लिङ्क्: apifox प्रत्यक्षतया डाउनलोड् कर्तुं लिङ्क् क्लिक् कुर्वन्तु (मात्रं नवीनतमं संस्करणं डाउनलोड् कुर्वन्तु)। Apifox - एपिआइ दस्तावेजीकरणस्य, त्रुटिनिवारणस्य, उपहासस्य, परीक्षणस्य च एकीकृतसहकार्यमञ्चः । अस्मिन् अन्तरफलकदस्तावेजप्रबन्धनम्, अन्तरफलकदोषनिवारणम्, Mock, स्वचालितपरीक्षणम् इत्यादीनि कार्याणि सन्ति, अन्तरफलकविकासस्य, परीक्षणस्य, संयुक्तदोषनिवारणस्य च कार्यक्षमता १० गुणा वर्धिता अस्ति सर्वोत्तमम् अन्तरफलकदस्तावेजप्रबन्धनसाधनं तथा अन्तरफलकस्वचालनपरीक्षणसाधनम्।https://apifox.com/ इति वृत्तान्तः ।
1. स्वस्य दलं निर्माय नूतनं परियोजनां रचयन्तु:
भवतः सङ्गणकस्य सहचराः आमन्त्रयन्तु
2. नूतनं अन्तरफलकं निर्माय नूतनं दत्तांशप्रतिरूपं रचयन्तु:
(1) अनुरोधः किम् इति निर्धारयन्तु (POST, GET, PUT, DELETE):
(2) परीक्षणवातावरणं एकीकृतं भवितुमर्हति, तथा च भिन्नपर्यावरणेषु URL भिन्नाः सन्ति:
(3) अनुरोधमापदण्डाः विन्यस्ताः सन्ति :
के मापदण्डाः विन्यस्ताः सन्ति?पैरामीटर् उदाहरणानि, चीनीयनामानि, पैरामीटर् विवरणानि च प्रदातव्यानि ।
(४) प्रतिक्रिया अवश्यं विन्यस्तं भवेत् : १.
यथा, भिन्न-भिन्न-अवस्थासु कीदृशी सूचना प्रत्यागच्छति इति निर्दिष्टुं आवश्यकम्, सफलता-उदाहरणानि अपवाद-उदाहरणानि च (अग्रभागस्य सुविधायै) भवितुमर्हन्ति
- {
- "code": 200,
- "message": "登入成功",
- "data": {
- "user_id": 27,
- "user_name": "孟霞",
- "user_password": "123456",
- "user_age": "15",
- "user_photo": "http://dummyimage.com/400x400",
- "user_last_time": "1996-12-11 09:03:49",
- "user_indentity": "messager",
- "user_birthday": "2024-02-23"
- }
- }
(५) दत्तांशप्रतिरूपं निर्मातुं शक्यते : १.
भवान् अनेकाः दत्तांशप्रतिमानाः निर्मातुम् अर्हति, यत् प्रतिक्रियाक्षेत्राणि प्रत्यागन्तुं अतीव सुलभं भवति तथा च अग्रभागस्य कृते अपि भवतः दत्तांशक्षेत्राणि द्रष्टुं सुविधाजनकम् अस्ति ।
apifox इत्यस्य लेखनविनिर्देशाः विशिष्टविवरणानि च।
Apifox Quick Start |https://apifox.com/सहाय्यम्/
(1) एपिआइ-अन्तरफलकदस्तावेजस्य आरम्भे परिचयः भवेत् । अस्मिन् खण्डे निम्नलिखितम् अन्तर्भवितुं शक्यते ।
अस्य भागस्य उद्देश्यं पाठकाः एपिआइ-अन्तरफलकस्य मूलभूतस्थितिं पृष्ठभूमिसूचनाञ्च अवगन्तुं शक्नुवन्ति ।
(2) अन्तरफलकसूची
तदनन्तरं API interface document मध्ये अस्माभिः सर्वाणि interfaces सूचीकृतव्यानि । प्रत्येकं अन्तरफलकं निम्नलिखितसूचनाः भवेयुः ।
अस्य खण्डस्य उद्देश्यं पाठकाः प्रत्येकस्य अन्तरफलकस्य मूलभूतसूचनाः शीघ्रं अवगन्तुं शक्नुवन्ति तथा च दस्तावेजे विद्यमानानाम् उदाहरणानां आधारेण अन्तरफलकानां सम्यक् उपयोगं कर्तुं शक्नुवन्ति
(3) अनुरोधमापदण्डानां प्रतिक्रियामापदण्डानां च वर्णनम्
अन्तरफलकसूचिकायाः अनन्तरं प्रत्येकस्य अन्तरफलकस्य अनुरोधमापदण्डानां प्रतिक्रियामापदण्डानां च विवरणं दातव्यम् । अस्मिन् खण्डे निम्नलिखितसूचनाः समाविष्टाः भवेयुः ।
पैरामीटर् प्रकाराणां प्रारूपाणां च कृते भवान् मानकदत्तांशप्रकारं प्रारूपं च उपयोक्तुं शक्नोति, अथवा विशिष्टपरिस्थित्यानुसारं स्वस्य दत्तांशप्रकारं प्रारूपं च परिभाषितुं शक्नोति । आवश्यकं पूर्वनिर्धारितं च मूल्यं वास्तविकस्थित्याधारितं निर्धारयितुं आवश्यकं वा ।
(4) त्रुटिसङ्केतवर्णनम्
एपिआइ-अन्तरफलकस्य उपयोगे कदाचित् त्रुटिः भवति अस्मिन् सन्दर्भे त्रुटिस्य प्रकारं कारणं च व्याख्यातुं त्रुटिसङ्केतः प्रत्यागन्तुं भवति । अतः API interface documentation मध्ये अस्माभिः सर्वाणि सम्भाव्य त्रुटिसङ्केतानि निर्दिष्टव्यानि । अस्मिन् खण्डे निम्नलिखितसूचनाः समाविष्टाः भवेयुः ।
अस्य खण्डस्य उद्देश्यं पाठकः सर्वान् सम्भाव्यदोषप्रकारान् कारणान् च अवगन्तुं, दस्तावेजे विद्यमानानाम् उदाहरणानां आधारेण दोषान् सम्यक् नियन्त्रयितुं च शक्नोति
(१) विशिष्टानि कार्याणि : १.
एकं परीक्षणवर्गं परिभाषयन्तु
परामर्श:
परीक्षणवर्गनाम: परीक्षितवर्गनाम Test CalculatorTest
संकुल नाम: xx.xx.xx.test cn.itcast.test
परीक्षणविधयः परिभाषयन्तु: स्वतन्त्रतया चालयितुं शक्यते
परामर्श:
विधिनाम: परीक्षणविधिनाम testAdd()
मूल्यं प्रत्यागच्छतु: शून्यम्
पैरामीटर् सूची: रिक्ताः पैरामीटर्स्
विधियां @Test योजयन्तु
आयात Junit निर्भरता वातावरण
न्यायस्य परिणामः : १.
रक्तः असफलः अभवत्
हरित: सफलता
वयं सामान्यतया अस्माकं अपेक्षितपरिणामान् निर्गमपरिणामान् च नियन्त्रयितुं Assert वर्गस्य अन्तर्गतं assertEquals(expected, actual) इति स्थिरविधिं उपयुञ्ज्महे
Assert.assertEquals (3, परिणाम);
द्वौ मापदण्डौ स्तः: अपेक्षितमूल्यं कार्यक्रमपरिणाममूल्यम्
परीक्षणपरिणामानां संसाधनार्थं Assert.assertEquals(expected, actual) इत्यस्य उपयोगः किमर्थम्?
यतः वयं नियमं कुर्मः यत् रक्तवर्णः असफलतां प्रतिनिधियति, हरितः च सम्यक्त्वं प्रतिनिधियति । यदा वयं सङ्गणकस्य योजनविधिं परीक्षितुं परीक्षणविधिं उपयुञ्ज्महे तदा केवलं एतत् परिणामं निर्गच्छामः (अपवादः न भवति इति कल्पयित्वा) । यदि वयं 1 तथा 3 इनपुट् कुर्मः तर्हि वयं परिणामं 4 प्राप्तुं अपेक्षयामः, परन्तु वयं यत् आउटपुट् कुर्मः तत् 2, तथा च यत् प्राप्तुं अपेक्षयामः तत् 4. अस्मिन् समये प्राप्तं परिणामं अस्माकं अपेक्षां न पूरयति, परन्तु रनिंग् परिणामः अद्यापि हरितः अस्ति (समीचीनं प्रतिनिधित्वं करोति), किं तत् सम्यक् नास्ति? यदि ते समानाः न सन्ति तर्हि रक्तं भविष्यति। किं अयं समयः अस्माकं हरित-रक्तयोः परिभाषां पूरयति ?
- package cn.itcast.test;
-
- import cn.itcast.junit.Calculator;
- import org.junit.Assert;
- import org.junit.Test;
-
- public class CalculatorTest {
- /**
- * 测试add方法
- */
- @Test
- public void testAdd(){
- Calculator c = new Calculator();
- int a = 1, b = 2;
- int result = c.add(1, 2);
- Assert.assertEquals(3, result);
- }
-
- /**
- * 测试sub方法
- */
- @Test
- public void testSub(){
- Calculator c = new Calculator();
- int a = 1, b = 2;
- int result = c.sub(1, 2);
- Assert.assertEquals(-1, 2);
- }
- }
-
@पूर्वम्
परीक्षणविधिना पूर्वं @Before योजयन्तु तथा च एषा पद्धतिः सर्वेषां परीक्षणविधिनाम् निष्पादनात् पूर्वं स्वयमेव निष्पादिता भविष्यति ।
@अनन्तरम्
परीक्षणविधेः पूर्वं @After योजयन्तु ततः संसाधनविमोचनविधिः भवति, या सर्वेषां परीक्षणविधिनां निष्पादनानन्तरं स्वयमेव निष्पादिता भविष्यति ।
@Before इत्यनेन अलङ्कृता विधिः परीक्षणविधिस्य निष्पादनात् पूर्वं निष्पादितः भविष्यति ।
@After इत्यनेन अलङ्कृता विधिः परीक्षणविधिः निष्पादितस्य अनन्तरं निष्पादिता भविष्यति ।
@Before अथवा @After इत्यनेन परिवर्तिताः पद्धतयः परीक्षणविधिः भवति वा न वा इति न कृत्वा निष्पादिताः भविष्यन्ति ।
(2) Test class plug-ins स्वयमेव जनयन्तु
(1) पृष्ठभागे अन्तरफलकदस्तावेजं लिखे सति स्पष्टतया स्पष्टतया च लिखितव्यं येन भवतः अग्रभागः तत् अवगन्तुं शक्नोति एतत् मानकीकृतरीत्या लिखितव्यं यथा भवान् स्वयमेव अवगन्तुं शक्नोति .पुनर्लिखितं नाम पूर्वनिर्धारितमूल्यं च अन्तरफलकप्रतिसादं सम्यक् लिखितव्यम् ।
(2) यत् पाठ्यते तस्य अतिरिक्तं अन्ये कानिचन वस्तूनि स्वयमेव ज्ञातुं शक्नुवन्ति, यथा ईमेलसत्यापनपञ्जीकरणं, सत्यापनसङ्केतप्रवेशः, c3p0, MD5 एन्क्रिप्शनं, लॉगलॉग्स्, Resultशैली इत्यादयः।
(3) कोडलेखनं अपि मानकीकृतं भवितुमर्हति तथा च तर्कः कठोरः भवितुमर्हति (कुकी, सत्र) सेटिंग्स् यत्र रिक्तनिर्णयः आवश्यकः, यत्र च सुरक्षां वर्धयितुं शक्यते, तत्र भवान् तस्मात् शिक्षितुं शक्नोति;
(4) अग्रभागः पृष्ठभागः च सम्यक् सहकार्यं कुर्वन्तु । अग्रभागस्य पृष्ठभागस्य च अन्तरक्रियाशीलप्रतिक्रिया अपि मूल्याङ्कनस्य भागः अस्ति, यत् भवता लिखितं अन्तरफलकं केवलं apifox इत्यस्य माध्यमेन चालयितुं न शक्यते किं विशिष्टे अग्रभागस्य पृष्ठे प्रस्तुते किमपि त्रुटयः सन्ति ?किमपि तार्किकसमस्याः सन्ति इत्यादयः विचारणीयाः भवेयुः।
(5) डिमाण्ड् एनालिसिसस्य समये भवन्तः कर्तुम् इच्छन्ति कार्याणि अन्तरफलकानि च निर्धारयन्तु यदि भवन्तः केचन कार्याणि कृतवन्तः परन्तु अग्रभागेन तानि न कृतानि तर्हि यदि तेषां कृतेषु कार्येषु भवतः पृष्ठभागस्य आवश्यकता भवति interfaces/data , यदि भवान् न लिखितवान् तर्हि सावधानीपूर्वकं चिन्तयित्वा अधिकं संवादं कुर्वन्तु ।
भवान् यथार्थतः कार्यं कुर्वन्तः परियोजनाः अथवा तत्सदृशं किमपि, यथा शॉपिङ्ग् वेबसाइट् इत्यादिषु बेन्चमार्कं कर्तुं शक्नुवन्ति । ततः भवन्तः Taobao इत्यस्य विरुद्धं बेन्चमार्कं कुर्वन्तु ।
(६) अन्धतया अधिकं मा अनुसृत्य तार्किकं युक्तियुक्तं च भवतु, सरलीकरणीयभागानाम् सरलीकरणं शिक्षतु । परन्तु अन्तरफलकानां मूलभूतसङ्ख्या, कोड-आयतनं च गारण्टी अपि भवितुमर्हति । (अस्माभिः मूलतः ये अन्तरफलकाः लिखिताः ते मूलतः ४० तः अधिकाः आसन्)