extprot.ÄÄÆÑÆ®ÇÏ°í È¿À²ÀûÀÌ°í È®Àå °¡´ÉÇÑ ¹ÙÀ̳ʸ® È Çü½Ä | |
Áö±Ý ´Ù¿î·Îµå |
extprot. ¼øÀ§ ¹× ¿ä¾à
±¤°í
extprot. ű×
extprot. ¼³¸í
ÄÞÆÑÆ®ÇÏ°í È¿À²ÀûÀÌ°í È®Àå °¡´ÉÇÑ ÀÌÁø Á÷·ÄÈ Çü½Ä ExtPROTÀº ÄÄÆÑÆ®ÇÏ°í È®Àå °¡´ÉÇϸç È¿À²ÀûÀÎ ¹ÙÀ̳ʸ® Á÷·ÄÈ Çü½ÄÀÔ´Ï´Ù. ÀÌ°ÍÀº 'extprot'serialization ½ºÅ°¸¶ÀÇ ÆÄÀ̽㠱¸ÇöÀÔ´Ï´Ù.ÀÌ ¼¼ºÎ Á¤º¸´Â http://eigenclass.org/r2/writings/extprot-extensextable¿¡¼ ÀÚ¼¼È÷ ¼³¸íÇÕ´Ï´Ù. -protocols-introsimilar googleÀÇ ÇÁ·ÎÅäÄÝ ¹öÆÛ ¹× Apache Thrift, ExtPROTÀº ±¸Á¶È µÈ µ¥ÀÌÅÍ "¸Þ½ÃÁö"ÀÇ Á¤ÀǸ¦ Çã¿ëÇÕ´Ï´Ù. ¸Þ½ÃÁö´Â º»ÁúÀûÀ¸·Î ÄÄÆÑÆ® ÇÑ ¹ÙÀ̳ʸ® Çü½Ä¿¡¼ È¿À²ÀûÀ¸·Î Á÷·ÄÈ µÉ ¼ö ÀÖÀ¸¸ç ¾ð¾î Á߸³Àû ÀÎ "ÇÁ·ÎÅäÄÝ"ÆÄÀÏ·Î Á¤ÀÇ µÉ ¼öÀÖ´Â ÀÔ·Â µÈ Å° °ª ½Ö ¼¼Æ®ÀÔ´Ï´Ù. ´ÙÀ½Àº ExtProt ¸Þ½ÃÁöÀÇ °£´ÜÇÑ ¿¹ÀÔ´Ï´Ù. ¸Þ½ÃÁö »ç¶÷ = {ID : int; À̸§ : ¹®ÀÚ¿; À̸ÞÀÏ : } 'Person'¸Þ½ÃÁö°¡ Æ÷ÇԵ˴ϴÙ. 'ID'´Â Á¤¼öÀÔ´Ï´Ù. 'name'Àº ¹®ÀÚ¿À̸ç 'À̸ÞÀÏ'Àº ¹®ÀÚ¿ ¸ñ·ÏÀÔ´Ï´Ù. ÀÌ·¯ÇÑ ÇÁ·ÎÅäÄÝ ¼³¸íÀº Ç¥ÁØ ±¸¹® ¹× °ü¿ë±¸¸¦ »ç¿ëÇÏ¿© Á¶ÀÛ ÇÒ ¼öÀÖ´Â Python Ŭ·¡½º ¼¼Æ®·Î ÄÄÆÄÀϵ˴ϴÙ. À§ÀÇ ÇÁ·ÎÅäÄÝÀÌ "person.proto"ÆÄÀÏ¿¡ ±â·ÏµÇ¸é ¿©±â¿¡ »ç¿ëµÇ´Â ¹æ¹ýÀÇ °£´ÜÇÑ ¿¹°¡ ÀÖ½À´Ï´Ù. >>> extprot.import_protocol ( "person.proto", globals ()) >>> p1 = »ç¶÷ ( 1, "GUIDO") >>> Àμâ P1.Emails # Çʵå´Â °¡´ÉÇÑ °æ¿ì Çö¸íÇÑ ±âº»°ªÀ» »ç¿ëÇÕ´Ï´Ù [] >>> P1.Emails.Append ( "guido@python.org") >>> p1.emails.append (7 ) # ¸ðµç Çʵå´Â µ¿ÀûÀ¸·Î TypeChecked ÃßÀûÀÔ´Ï´Ù (°¡Àå Ãֱ٠ȣÃâ ¸¶Áö¸·) : ... valueError : 7 >>> Àμ⠴亯 (p1.to_string ()) 'x01x1fx03x00x02x1fx05guidox05x13x01x03x10guido@python.org'>>> Àμâ .from_string (p1.to_string ()). À̸§ 'GUIDO'>>> ExtPROTÀº °ü·Ã Á÷·ÄÈ ±â¼ú¿¡ À¯¸®ÇÏ°Ô ºñ±³µË´Ï´Ù. * °·ÂÇÑ À¯Çü ½Ã½ºÅÛ; °·ÂÇÏ°Ô ÀÔ·Â µÈ Æ©Çà ¹× ¸ñ·Ï, űװ¡ ÁöÁ¤µÈ Disjoint ³ëÁ¶, ÆĶó ¸ÞÆ®¸¯ ´ÙÇü¼º. * ¼¿ÇÁ - delimitng µ¥ÀÌÅÍ; ¸ðµç Á÷·ÄÈ µÈ ¸Þ½ÃÁö´Â ¸Þ½ÃÁö¸¦ ½±°Ô ½ºÆ®¸®¹ÖÇÏ°í °Ç³Ê ¶Ù´Â ±æÀ̸¦ ³ªÅ¸³À´Ï´Ù. * ÀÚü ¼³¸í µ¥ÀÌÅÍ; ¸Þ½ÃÁöÀÇ '½ºÄÌ·¹Åæ'Àº ÇÁ·ÎÅäÄÝ Á¤ÀÇ°¡ ¾øÀ¸¸é À籸¼º ÇÒ ¼ö ÀÖ½À´Ï´Ù. * ¼ÒÇü ÀÌÁø Çü½Ä; ÇÁ·ÎÅäÄÝ ¹öÆÛ / ½º·ÎÇÁÆ®¿Í ºñ±³ÇÒ ¼ö ÀÖÁö¸¸ ÀÚü ±¸ºÐ µÈ º»¼ºÀ¸·Î ÀÎÇØ ÀϺΠ¿À¹ö Çìµå°¡ ÀÖ½À´Ï´Ù.ÀÌ ±â´ÉÀº ExtPROTÀ» °·ÂÇÏ°Ô È®Àå ÇÒ ¼öÀÖ°Ô ¸¸µé±â À§ÇØ °áÇյǾî ÀÖÀ¸¸ç, Á¾Á¾ ¸Þ½ÃÁö¿¡ Çʵ带 Ãß°¡ÇÏ´Â ÇÁ·ÎÅäÄÝ È®Àå¿¡ °ÉÃÄ µÚ·Î À¯ÁöµÇ´Â * ¹× * ¼ø¹æÇâ ȣȯ¼ºÀ» À¯ÁöÇÕ´Ï´Ù. Æ©Çÿ¡ ¿ä¼Ò¸¦ Ãß°¡ÇÏ¿© Disjoint Union¿¡ »ç·Ê¸¦ Ãß°¡ÇÏ°í ¿ø½Ã À¯ÇüÀ» Æ©ÇÃ, ¸ñ·Ï ¶Ç´Â ³ëµ¿ Á¶ÇÕÀ¸·Î È«º¸ÇÕ´Ï´Ù. ¿ä±¸ »çÇ× : ¡¤ ÆÄÀ̽ã
extprot. °ü·Ã ¼ÒÇÁÆ®¿þ¾î