தமிழ்

ஓபன்ஏபிஐ விவரக்குறிப்பின் (OAS) ஆற்றலைக் கண்டறியுங்கள். இந்த வழிகாட்டி முக்கிய கருத்துக்கள், நன்மைகள் முதல் நடைமுறை எடுத்துக்காட்டுகள் மற்றும் API-முதல் வடிவமைப்பின் எதிர்காலம் வரை அனைத்தையும் உள்ளடக்கியது.

API ஆவணப்படுத்தல் பரிணாமம்: ஓபன்ஏபிஐ விவரக்குறிப்புக்கான ஒரு விரிவான வழிகாட்டி

இன்றைய அதி-இணைக்கப்பட்ட டிஜிட்டல் உலகில், பயன்பாட்டு நிரலாக்க இடைமுகங்கள் (APIs) தான் நமது மென்பொருள் மற்றும் சேவைகளை ஒன்றாக இணைக்கும் கண்ணுக்குத் தெரியாத இழைகளாகும். அவை மொபைல் பேங்கிங் முதல் சமூக ஊடக பதிவுகள் வரை அனைத்தையும் இயக்கும் நவீன டிஜிட்டல் பொருளாதாரத்தின் இயந்திரமாகும். ஆனால் ஏபிஐ-களின் எண்ணிக்கை வெடிக்கும்போது, ஒரு முக்கியமான சவால் எழுகிறது: டெவலப்பர்கள், அமைப்புகள் மற்றும் நிறுவனங்கள் எவ்வாறு திறம்பட மற்றும் தெளிவின்மையின்றி தொடர்பு கொள்ள முடியும்? உலகின் ஒரு பகுதியில் உருவாக்கப்பட்ட ஒரு ஏபிஐ, மற்றொரு பகுதியில் உள்ள ஒரு சேவையால் தடையின்றி பயன்படுத்தப்படுவதை நாம் எப்படி உறுதி செய்வது?

அதற்கான பதில் ஒரு பொதுவான மொழியில், அதாவது மனிதர்களும் இயந்திரங்களும் புரிந்து கொள்ளக்கூடிய வகையில் ஒரு ஏபிஐ-யின் திறன்களை விவரிக்கும் ஒரு உலகளாவிய ஒப்பந்தத்தில் உள்ளது. இதுவே ஓபன்ஏபிஐ விவரக்குறிப்பின் (OAS) பங்கு. வெறும் ஆவணப்படுத்தலை விட, OAS என்பது ரெஸ்ட்ஃபுல் ஏபிஐ-களை வடிவமைப்பதற்கும், உருவாக்குவதற்கும், ஆவணப்படுத்துவதற்கும் மற்றும் பயன்படுத்துவதற்கும் ஒரு அடிப்படைத் தரமாகும். இந்த வழிகாட்டி உங்களை ஓபன்ஏபிஐ விவரக்குறிப்பின் ஆழத்திற்கு அழைத்துச் செல்லும், அது என்ன, ஏன் முக்கியம், மற்றும் சிறந்த, மேலும் கூட்டுழைப்புடன் கூடிய டிஜிட்டல் தயாரிப்புகளை உருவாக்க அதை நீங்கள் எவ்வாறு பயன்படுத்தலாம் என்பதை ஆராயும்.

ஓபன்ஏபிஐ விவரக்குறிப்பு என்றால் என்ன? ஏபிஐ-களுக்கான ஒரு உலகளாவிய மொழி

அதன் மையத்தில், ஓபன்ஏபிஐ விவரக்குறிப்பு என்பது ரெஸ்ட்ஃபுல் ஏபிஐ-களுக்கான ஒரு நிலையான, மொழி-சார்பற்ற இடைமுக விளக்கமாகும். இது உங்கள் ஏபிஐ-யின் முழு கட்டமைப்பையும் ஒரே கோப்பில், பொதுவாக YAML அல்லது JSON இல் எழுத அனுமதிக்கிறது. இதை ஒரு கட்டிடத்திற்கான விரிவான வரைபடமாக நினைத்துப் பாருங்கள்; எந்தவொரு கட்டுமானப் பணிகளும் தொடங்குவதற்கு முன்பு, அந்த வரைபடம் ஒவ்வொரு அறையையும், ஒவ்வொரு வாசலையும், ஒவ்வொரு மின் இணைப்பையும் கோடிட்டுக் காட்டுகிறது. இதேபோல், ஒரு ஓபன்ஏபிஐ ஆவணம் விவரிக்கிறது:

ஒரு சுருக்கமான வரலாறு: ஸ்வேகரிலிருந்து ஓபன்ஏபிஐ வரை

ஓபன்ஏபிஐ உடன் "ஸ்வேகர்" என்ற சொல் ஒன்றுக்கொன்று மாற்றாகப் பயன்படுத்தப்படுவதை நீங்கள் கேள்விப்பட்டிருக்கலாம். அவற்றின் உறவைப் புரிந்துகொள்வது அவசியம். இந்த விவரக்குறிப்பு 2010 இல் ஸ்வேகர் விவரக்குறிப்பாகத் தொடங்கியது, இது ரெவெர்பில் டோனி டாம் என்பவரால் உருவாக்கப்பட்டது. இது பெரும் புகழ் பெற்றதால், 2015 இல் லினக்ஸ் அறக்கட்டளைக்கு வழங்கப்பட்டு, ஓபன்ஏபிஐ விவரக்குறிப்பு எனப் பெயர் மாற்றப்பட்டது. கூகிள், மைக்ரோசாப்ட் மற்றும் ஐபிஎம் உள்ளிட்ட தொழில் தலைவர்களின் கூட்டமைப்பான ஓபன்ஏபிஐ முன்முயற்சியின் கீழ் இது ஒரு உண்மையான திறந்த தரநிலையாக நிறுவப்பட்டது.

இன்று, ஸ்வேகர் என்பது ஓபன்ஏபிஐ விவரக்குறிப்புடன் செயல்படும் சக்திவாய்ந்த திறந்த மூல மற்றும் தொழில்முறை கருவிகளின் தொகுப்பைக் குறிக்கிறது, அதாவது ஊடாடும் ஆவணங்களை உருவாக்குவதற்கான ஸ்வேகர் UI மற்றும் விவரக்குறிப்பை எழுதுவதற்கான ஸ்வேகர் எடிட்டர் போன்றவை.

ஒரு ஓபன்ஏபிஐ ஆவணத்தின் முக்கிய கூறுகள்

ஒரு ஓபன்ஏபிஐ ஆவணம் குறிப்பிட்ட புலங்களின் தொகுப்புடன் கட்டமைக்கப்பட்டுள்ளது. இது முதலில் பார்க்கும்போது சற்று அச்சுறுத்தலாகத் தோன்றினாலும், இது தர்க்கரீதியாக ஒழுங்கமைக்கப்பட்டுள்ளது. ஓபன்ஏபிஐ 3.x ஆவணத்தின் முக்கிய கட்டமைப்புத் தொகுதிகளை, அதன் மனிதர்களுக்கு எளிதில் படிக்கக்கூடிய தன்மைக்காக YAML ஐப் பயன்படுத்தி உடைத்துப் பார்ப்போம்.

1. `openapi` மற்றும் `info` ஆப்ஜெக்ட்கள்: அடிப்படைகள்

ஒவ்வொரு ஓபன்ஏபிஐ ஆவணமும் ஒரு பதிப்பு எண் மற்றும் அத்தியாவசிய மெட்டாடேட்டாவுடன் தொடங்குகிறது.

உதாரணம்:


openapi: 3.0.3
info:
  title: Global Book Catalog API
  description: An API for accessing a catalog of books from around the world.
  version: 1.0.0
  contact:
    name: API Support Team
    url: http://www.example.com/support
    email: support@example.com
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html

2. `servers` வரிசை: உங்கள் ஏபிஐ-ஐ எங்கே கண்டுபிடிப்பது

servers வரிசையானது உங்கள் ஏபிஐ-க்கான அடிப்படை URL-களைக் குறிப்பிடுகிறது. டெவலப்மெண்ட், ஸ்டேஜிங் மற்றும் புரொடக்ஷன் போன்ற வெவ்வேறு சூழல்களுக்கு நீங்கள் பல சேவையகங்களை வரையறுக்கலாம். இது கருவிகள் எளிதாக சூழல்களுக்கு இடையில் மாற அனுமதிக்கிறது.

உதாரணம்:


servers:
  - url: https://api.example.com/v1
    description: Production Server
  - url: https://staging-api.example.com/v1
    description: Staging Server

3. `paths` ஆப்ஜெக்ட்: ஏபிஐ-யின் இதயம்

இங்கேதான் உங்கள் ஏபிஐ-யின் எண்ட்பாயிண்ட்களை நீங்கள் வரையறுக்கிறீர்கள். paths ஆப்ஜெக்ட் அனைத்து தனிப்பட்ட URL பாதைகளையும் வைத்திருக்கிறது. ஒவ்வொரு பாதை உருப்படியும் அந்தப் பாதையில் செய்யக்கூடிய HTTP செயல்பாடுகளை (get, post, put, delete, முதலியன) விவரிக்கிறது.

ஒவ்வொரு செயல்பாட்டிற்குள்ளும், நீங்கள் இது போன்ற விவரங்களை வரையறுக்கிறீர்கள்:

4. `components` ஆப்ஜெக்ட்: மீண்டும் பயன்படுத்தக்கூடிய கட்டமைப்புத் தொகுதிகள்

மீண்டும் மீண்டும் செய்வதைத் தவிர்க்க (DRY கோட்பாட்டைப் பின்பற்றி), ஓபன்ஏபிஐ components ஆப்ஜெக்ட்டை வழங்குகிறது. இது ஒரு சக்திவாய்ந்த அம்சமாகும், அங்கு நீங்கள் மீண்டும் பயன்படுத்தக்கூடிய கூறுகளை வரையறுத்து அவற்றை உங்கள் விவரக்குறிப்பு முழுவதும் $ref சுட்டிகளைப் பயன்படுத்தி குறிப்பிடலாம்.

5. `security` ஆப்ஜெக்ட்: அங்கீகாரத்தைப் பயன்படுத்துதல்

கூறுகளில் உங்கள் securitySchemes-ஐ வரையறுத்தவுடன், security ஆப்ஜெக்ட் அவற்றைப் பயன்படுத்தப் பயன்படுகிறது. நீங்கள் முழு ஏபிஐ-க்கும் உலகளாவிய ரீதியாக பாதுகாப்பைப் பயன்படுத்தலாம் அல்லது ஒவ்வொரு செயல்பாட்டிற்கும் தனித்தனியாகப் பயன்படுத்தலாம், இது பொது மற்றும் பாதுகாக்கப்பட்ட எண்ட்பாயிண்ட்களின் கலவையை அனுமதிக்கிறது.

உங்கள் நிறுவனம் ஏன் ஓபன்ஏபிஐ-ஐ ஏற்றுக்கொள்ள வேண்டும்: வணிக மற்றும் தொழில்நுட்ப நன்மைகள்

ஓபன்ஏபிஐ விவரக்குறிப்பை ஏற்றுக்கொள்வது ஒரு தொழில்நுட்பத் தேர்வு மட்டுமல்ல; இது முழு மென்பொருள் மேம்பாட்டு வாழ்க்கைச் சுழற்சியிலும் செயல்திறன், ஒத்துழைப்பு மற்றும் தரத்தை இயக்கும் ஒரு மூலோபாய முடிவாகும்.

டெவலப்பர்களுக்கு: உண்மையின் ஒற்றை ஆதாரம்

தயாரிப்பு மேலாளர்கள் மற்றும் கட்டிடக் கலைஞர்களுக்கு: வடிவமைப்பு மற்றும் ஆளுகை

சோதனையாளர்கள் மற்றும் QA குழுக்களுக்கு: நெறிப்படுத்தப்பட்ட சரிபார்ப்பு

இறுதிப் பயனர்கள் மற்றும் கூட்டாளர்களுக்கு: ஒரு உயர்ந்த டெவலப்பர் அனுபவம் (DX)

நடைமுறை வழிகாட்டி: உங்கள் முதல் ஓபன்ஏபிஐ ஆவணத்தை உருவாக்குதல்

நமது "Global Book Catalog API"-க்காக ஒரு அடிப்படை ஓபன்ஏபிஐ 3.0 விவரக்குறிப்பை உருவாக்குவதன் மூலம் கோட்பாட்டை நடைமுறைக்குக் கொண்டு வருவோம். அதன் வாசிப்புத் திறனுக்காக நாம் YAML-ஐப் பயன்படுத்துவோம்.

படி 1: அடிப்படை தகவல் மற்றும் சேவையகங்களை வரையறுத்தல்

மெட்டாடேட்டா மற்றும் புரொடக்ஷன் சர்வர் URL உடன் தொடங்குகிறோம்.


openapi: 3.0.3
info:
  title: Global Book Catalog API
  description: An API for accessing a catalog of books from around the world.
  version: 1.0.0
servers:
  - url: https://api.globalbooks.com/v1

படி 2: `components` இல் மீண்டும் பயன்படுத்தக்கூடிய தரவு மாதிரியை வரையறுத்தல்

எங்கள் எண்ட்பாயிண்ட்களை வரையறுப்பதற்கு முன், ஒரு `Book` ஆப்ஜெக்ட்டுக்கான மீண்டும் பயன்படுத்தக்கூடிய ஸ்கீமாவை உருவாக்குவோம். இது எங்கள் வடிவமைப்பை சுத்தமாகவும் சீராகவும் வைத்திருக்கிறது.


components:
  schemas:
    Book:
      type: object
      properties:
        isbn:
          type: string
          description: The International Standard Book Number.
          example: '978-0321765723'
        title:
          type: string
          description: The title of the book.
          example: 'The C++ Programming Language'
        author:
          type: string
          description: The author of the book.
          example: 'Bjarne Stroustrup'
        publicationYear:
          type: integer
          description: The year the book was published.
          example: 2013
      required:
        - isbn
        - title
        - author

படி 3: `paths` இல் எண்ட்பாயிண்ட்களை வரையறுத்தல்

இப்போது, நாம் இரண்டு எண்ட்பாயிண்ட்களை உருவாக்குவோம்: ஒன்று புத்தகங்களின் பட்டியலைப் பெறுவதற்கும், மற்றொன்று அதன் ISBN மூலம் ஒரு குறிப்பிட்ட புத்தகத்தைப் பெறுவதற்கும்.

$ref: '#/components/schemas/Book' என்பதன் பயன்பாட்டைக் கவனியுங்கள். இப்படித்தான் நாம் நமது மீண்டும் பயன்படுத்தக்கூடிய `Book` ஸ்கீமாவைக் குறிப்பிடுகிறோம்.


paths:
  /books:
    get:
      summary: List all available books
      description: Returns a list of books, optionally filtered.
      operationId: listBooks
      responses:
        '200':
          description: A successful response with an array of books.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Book'

  /books/{isbn}:
    get:
      summary: Get a book by its ISBN
      description: Returns a single book identified by its ISBN.
      operationId: getBookByIsbn
      parameters:
        - name: isbn
          in: path
          required: true
          description: The ISBN of the book to retrieve.
          schema:
            type: string
      responses:
        '200':
          description: The requested book.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Book'
        '404':
          description: The book with the specified ISBN was not found.

படி 4: பாதுகாப்பைச் சேர்த்தல்

ஒரு ஹெடரில் அனுப்பப்பட வேண்டிய எளிய API கீ மூலம் எங்கள் API-ஐப் பாதுகாப்போம். முதலில், `components`-ல் திட்டத்தை வரையறுத்து, பின்னர் அதை உலகளவில் பயன்படுத்துகிறோம்.


# இதை 'components' பிரிவில் சேர்க்கவும்
components:
  # முந்தைய ஸ்கீமாக்கள்
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-KEY

# இதை ஆவணத்தின் ரூட் லெவலில் சேர்க்கவும்
security:
  - ApiKeyAuth: []

படி 5: சரிபார்த்தல் மற்றும் காட்சிப்படுத்தல்

உங்கள் முழுமையான YAML கோப்புடன், நீங்கள் இப்போது பல்வேறு கருவிகளைப் பயன்படுத்தலாம்:

ஓபன்ஏபிஐ சுற்றுச்சூழல் அமைப்பு: கருவிகள் மற்றும் தொழில்நுட்பங்கள்

OAS-இன் சக்தி அதன் பரந்த மற்றும் முதிர்ந்த கருவிகளின் சுற்றுச்சூழல் அமைப்பால் பெருக்கப்படுகிறது. உங்கள் தேவை எதுவாக இருந்தாலும், அதற்கொரு கருவி இருக்க வாய்ப்புள்ளது:

ஓபன்ஏபிஐ-யின் எதிர்காலம்: OAS 3.1 மற்றும் அதற்கு அப்பால்

ஓபன்ஏபிஐ விவரக்குறிப்பு தொடர்ந்து உருவாகி வருகிறது. சமீபத்திய முக்கிய பதிப்பான OAS 3.1, பல குறிப்பிடத்தக்க மேம்பாடுகளை அறிமுகப்படுத்தியது:

இந்த முன்னேற்றங்கள், ஒரு நவீன, API-முதல், மற்றும் நிகழ்வு-சார்ந்த கட்டமைப்பில் ஓபன்ஏபிஐ-யின் மைய நிலையை உறுதிப்படுத்துகின்றன.

முடிவுரை: நவீன மேம்பாட்டின் ஒரு மூலக்கல்

ஓபன்ஏபிஐ விவரக்குறிப்பு நாம் ஏபிஐ-களைப் பற்றி சிந்திக்கும் விதத்தை மாற்றியுள்ளது. இது ஏபிஐ ஆவணப்படுத்தலை ஒரு அஞ்சப்படும், பெரும்பாலும் புறக்கணிக்கப்பட்ட பின் சிந்தனையிலிருந்து, முழு மேம்பாட்டு வாழ்க்கைச் சுழற்சியையும் இயக்கும் ஒரு மூலோபாய, வாழும் ஆவணமாக உயர்த்தியுள்ளது. ஒரு இயந்திரத்தால் படிக்கக்கூடிய ஒப்பந்தமாகச் செயல்படுவதன் மூலம், OAS ஒத்துழைப்பை வளர்க்கிறது, சக்திவாய்ந்த ஆட்டோமேஷனை செயல்படுத்துகிறது, நிலைத்தன்மையைச் செயல்படுத்துகிறது, மேலும் இறுதியில் சிறந்த, நம்பகமான மற்றும் எளிதாகப் பயன்படுத்தக்கூடிய ஏபிஐ-களின் உருவாக்கத்திற்கு வழிவகுக்கிறது.

நீங்கள் ஒரு டெவலப்பர், கட்டிடக் கலைஞர், தயாரிப்பு மேலாளர் அல்லது சோதனையாளராக இருந்தாலும், ஓபன்ஏபிஐ விவரக்குறிப்பைத் தழுவுவது நவீன மென்பொருள் மேம்பாட்டில் தேர்ச்சி பெறுவதற்கான ஒரு முக்கியமான படியாகும். நீங்கள் ஏற்கனவே அதைப் பயன்படுத்தவில்லை என்றால், உங்கள் அடுத்த திட்டத்துடன் தொடங்க பரிசீலிக்கவும். முதலில் ஒப்பந்தத்தை வரையறுத்து, அதை உங்கள் குழுவுடன் பகிர்ந்து, உங்கள் டிஜிட்டல் ஒத்துழைப்புகளில் ஒரு புதிய அளவிலான செயல்திறனையும் தெளிவையும் திறக்கவும்.