Scratրոյից սերվեր ստեղծելը մեծ խնդիր է: Այնուամենայնիվ, դա կարող է մեծապես բարելավել ձեր ծրագրավորման հմտությունները և կարող է թույլ տալ ձեզ փոփոխել այն ձեր կարիքներին համապատասխան: Այս ձեռնարկը կօգտագործի python և ցածր մակարդակի վարդակների ծրագրավորում ՝ սերվեր ստեղծելու համար, որպեսզի հաճախորդները կարողանան շփվել միմյանց հետ: Սա նաև կներառի գործընթացը միայն պատուհանների վրա: Որոշ տեղեկություններ կտրվեն հրահանգների մեջ, բայց եթե պարզապես ցանկանում եք ծածկագիրը, ապա այն ներկայացված է թվերում: (Նշում. Այստեղ ներկայացված հրահանգները միայն հիմնականներն են):
Քայլեր
Մեթոդ 1 3 -ից. Python- ի տեղադրում
Քայլ 1. Ներբեռնեք Python- ը:
Գնացեք python- ի հիմնական կայք և ներբեռնեք Python 2.7.10: Ներբեռնումից հետո անցեք Python տեղադրողի քայլերին ՝ կանխադրված պարամետրերով: Այս հղումը տրամադրված է այստեղ ՝
Քայլ 2. Գործարկեք IDLE (Python GUI):
Մտեք Python 2.7 թղթապանակ և գործարկեք IDLE (Python GUI), python- ը այժմ պետք է լինի ձեր մեկնարկի ընտրացանկում, որտեղ գտնվում է IDLE- ն:
Քայլ 3. Ստեղծեք նոր ֆայլ:
Նոր բացվող պատուհանի վերին ձախ անկյունում անցեք Ֆայլ և ընտրեք Նոր ֆայլ, դուք պետք է բաց դատարկ պատուհան ունենաք ՝ վերնագրով ՝ Անվերնագիր:
Մեթոդ 2 3 -ից. Ստեղծեք սերվեր
Քայլ 1. Ներմուծեք անհրաժեշտ մոդուլներ:
Այս կոդի համար անհրաժեշտ երկու մոդուլներն են `« վարդակից »և« թելիկավոր »: Դա կարելի է անել ՝ մուտքագրելով առաջին տողում «վարդակից ներմուծումից *» և հաջորդ տողում «ներմուծման թելեր»:
Քայլ 2. Ստեղծեք նոր թեմա:
Սա կարգավորում է 2 հաճախորդների համապատասխանեցումը միմյանց հետ: Թեմաները գործընթացներ են, որոնք կարող են գործարկվել հիմնական ծրագրի գործարկման ընթացքում: Մուտքագրեք ճիշտ այնպես, ինչպես ցույց է տալիս նկարը: Սա կկարգավորի փոփոխականները շարանում, որպեսզի դրանք հետագայում կանչվեն:
Քայլ 3. Ստեղծեք շարանի գործընթաց:
Հաճախորդների անմիջական շփման համար անհրաժեշտ է միմյանց փոխանցել տեղեկատվություն, որը ներառում է նրանց IP հասցեն և որ նավահանգիստն են օգտագործում: Դա անելու համար դուք պետք է ստեղծեք վարդակից օբյեկտ, որը կարող է կատարվել «variableName = socket (AF_NET, SOCK_DGRAM)» միջոցով: Սա կստեղծի վարդակից օբյեկտ, որն օգտագործում է UDP արձանագրությունը: Հաջորդը միացրեք վարդակը ձեր IP հասցեին `որոշակի պորտի համարով` «roomSocket.bind (('', self.port))»: Դատարկ տարածքը նշանակում է ձեր սեփական համակարգչի IP հասցեն ձեր տեղական ցանցի ներսում, իսկ self.port- ը նշանակում է նավահանգստի համարը, որը ներառված է այս թեմա զանգելիս: Վերջին բանը, որ դուք պետք է անեք այս վարդակից, տեղեկատվություն ուղարկեք դրա միջոցով: Քանի որ սա UDP վարդակից է, դուք պարզապես պետք է իմանաք այն համակարգչի IP- ն ու պորտը, որին ուղարկում եք տեղեկատվություն, ուղարկելու համար շարահյուսությունն է «socketName.sendto (IP, նավահանգիստ)»:
Քայլ 4. Ստեղծեք գլոբալ փոփոխականներ:
Այս քայլի համար ձեզ հարկավոր է սահմանել մի քանի փոփոխական, որը ներառում է օգտվողների ցուցակ, նավահանգստի համարներ, հաճախորդների քանակ, թելի հաճախորդներ և սենյակի ID: Դուք նաև պետք է ստեղծեք վարդակից, որպեսզի ձեր սերվերը կարողանա փոխազդել ինտերնետի հետ: Դա արվում է ՝ ստեղծելով նոր վարդակից օբյեկտ և այն կապելով ձեր IP հասցեին որոշակի պորտի համարով: (Պորտի համարը կարող է լինել որևէ բան, բայց սովորաբար դա բարձր բան է `խուսափելու համար այն օգտագործելուց կամ պահեստավորված նավահանգստի համարներ օգտագործելուց):
Քայլ 5. Ստեղծեք հիմնական սերվերի գործընթացը:
Սա կվերցնի հաճախորդի հասցեն, ինչպես նաև կսկսի ավելի վաղ ստեղծված շարանը: Սա ներառում է սպասել բուֆերից տվյալներ ստանալու համար և ստանալ հաճախորդի հասցեն և պահպանել դրանք թելում օգտագործվելու համար: Ձեր վարդակից տեղեկատվություն ստանալու եղանակն է զանգահարել «socketName.recvfrom (1024)» - ով, այստեղ համարը ընդամենը միաժամանակ կարդացող բայթերի քանակն է: Այս օրինակում մենք այն պահում ենք userAddr կոչվող փոփոխականի մեջ, և երբ դա տեղի ունենա, կարող եք պահպանել այս հասցեն 4 -րդ քայլում ստեղծված ցուցակում: երբ տեղի են ունենում երկու տարբեր կապեր:
Քայլ 6. Պահպանեք ձեր աշխատանքը:
Դա պետք է արվի այնպիսի գրացուցակում, որին հեշտ է հասնել, որպեսզի այն հեշտությամբ հասանելի լինի փորձարկման համար:
3 -րդ մեթոդ 3 -ից. Փորձարկում
Քայլ 1. Ստեղծեք թեստային հաճախորդ:
Սա շատ հիմնական հաճախորդ է, որը կլուծի միայն այն, թե արդյոք սերվերն այլ հաճախորդի տեղեկությունները ուղարկել է ներկա հաճախորդին, թե ոչ: Խնդրում ենք նկատի ունենալ, որ ի տարբերություն սերվերի ծածկագրի, այս ծածկագիրը պահանջում է սերվերի անուն: Եթե այս ամենը աշխատում եք մեկ համակարգչի վրա, սերվերի անունը պետք է լինի ձեր համակարգչի անունը: Դուք կարող եք պարզել ձեր համակարգչի անունը `աջ սեղմելով« Իմ համակարգիչը »և անցնելով« Հատկություններ »:
Քայլ 2. Պահպանեք ձեր աշխատանքը:
Սա պետք է լինի նույն գրացուցակում, ինչ սերվերի կոդը:
Քայլ 3. Բացեք երեք տարբեր հրամանի պատուհաններ:
Գնացեք մեկնարկի ընտրացանկ և որոնման տողում մուտքագրեք «cmd» և սեղմեք Enter: Դա արեք երեք անգամ: Պատուհանները պետք է այսպիսի տեսք ունենան:
Քայլ 4. Գործարկեք ծրագրերը:
Հրամանի պատուհանից օգտվելիս ստիպված կլինեք մուտքագրել ճշգրիտ ուղին: Դուք պետք է գործարկեք սերվերի կոդը նախ մեկ հրամանի պատուհանում, այնուհետև փորձարկման հաճախորդի կոդը մյուս երկուսում: Եթե ամեն ինչ հաջող էր, ապա այս հաղորդագրությունները ինչ -որ բան կստանաք ձեր պատուհանում:
Գուշացումներ
- Այս ծրագիրը կաշխատի միայն այն գործարկելիս և հաճախորդներին փորձարկել նույն տեղական ցանցում:
- Python 2.7.10- ը հնացած է և մոտենում է իր աջակցության ավարտին: Լավ սերվերներ պատրաստելու համար խորհուրդ է տրվում, որ դրա փոխարեն տեղադրվի Python 3 -ի վերջին տարբերակը: