Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ You use internal directories to make packages private. If you put a package insi

### `/pkg`

Library code that's ok to use by external applications (e.g., `/pkg/mypubliclib`). Other projects will import these libraries expecting them to work, so think twice before you put something here :-) Note that the `internal` directory is a better way to ensure your private packages are not importable because it's enforced by Go. The `/pkg` directory is still a good way to explicitly communicate that the code in that directory is safe for use by others. The [`I'll take pkg over internal`](https://travisjeffery.com/b/2019/11/i-ll-take-pkg-over-internal/) blog post by Travis Jeffery provides a good overview of the `pkg` and `internal` directories and when it might make sense to use them.
Library code that's ok to use by external applications (e.g., `/pkg/mypubliclib`). Other projects will import these libraries expecting them to work, so think twice before you put something here :-) Note that the `internal` directory is a better way to ensure your private packages are not importable because it's enforced by Go. The `/pkg` directory is still a good way to explicitly communicate that the code in that directory is safe for use by others. The [`I'll take pkg over internal`](https://travisjeffery.com/ill-take-pkg-over-internal/) blog post by Travis Jeffery provides a good overview of the `pkg` and `internal` directories and when it might make sense to use them.

It's also a way to group Go code in one place when your root directory contains lots of non-Go components and directories making it easier to run various Go tools (as mentioned in these talks: [`Best Practices for Industrial Programming`](https://www.youtube.com/watch?v=PTE4VJIdHPg) from GopherCon EU 2018, [GopherCon 2018: Kat Zien - How Do You Structure Your Go Apps](https://www.youtube.com/watch?v=oL6JBUk6tj0) and [GoLab 2018 - Massimiliano Pippi - Project layout patterns in Go](https://www.youtube.com/watch?v=3gQa1LWwuzk)).

Expand Down
2 changes: 1 addition & 1 deletion README_be.md
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@

### `/pkg`

Код бібліятэкі, які могуць выкарыстоўваць знешнія праграмы (напрыклад, `/pkg/mypubliclib`). Іншыя праекты будуць імпартаваць гэтыя бібліятэкі, разлічваючы на іх працу, таму двойчы падумайце перад тым, як размясціць тут нешта 😃 Звярніце ўвагу, што `internal` каталог - лепшы спосаб забяспечыць недаступнасць вашых прыватных пакетаў для імпарту, бо гэта забяспечваецца Go. Каталог `/pkg` па-ранейшаму добры спосаб выразна паведаміць аб бяспецы кода ў гэтым каталогу для выкарыстання іншымі. Блог-паведамленне [`I'll take pkg over internal`](https://travisjeffery.com/b/2019/11/i-ll-take-pkg-over-internal/) Трэвіса Джэферы дае добры агляд каталогаў `pkg` і `internal` і калі ёсць сэнс іх выкарыстоўваць.
Код бібліятэкі, які могуць выкарыстоўваць знешнія праграмы (напрыклад, `/pkg/mypubliclib`). Іншыя праекты будуць імпартаваць гэтыя бібліятэкі, разлічваючы на іх працу, таму двойчы падумайце перад тым, як размясціць тут нешта 😃 Звярніце ўвагу, што `internal` каталог - лепшы спосаб забяспечыць недаступнасць вашых прыватных пакетаў для імпарту, бо гэта забяспечваецца Go. Каталог `/pkg` па-ранейшаму добры спосаб выразна паведаміць аб бяспецы кода ў гэтым каталогу для выкарыстання іншымі. Блог-паведамленне [`I'll take pkg over internal`](https://travisjeffery.com/ill-take-pkg-over-internal/) Трэвіса Джэферы дае добры агляд каталогаў `pkg` і `internal` і калі ёсць сэнс іх выкарыстоўваць.

Гэта таксама спосаб згрупаваць код Go ў адным месцы, калі ваш каранёвы каталог утрымлівае шмат не-Go кампанентаў і каталогаў, што палягчае запуск розных інструментаў Go (як згадваецца ў гэтых дакладах: [`Лепшыя практыкі для прамысловага праграмавання`](https://www.youtube.com/watch?v=PTE4VJIdHPg) з GopherCon EU 2018, [`GopherCon 2018: Кат Зіен - Як структураваны вашы праграмы на Go`](https://www.youtube.com/watch?v=oL6JBUk6tj0) і [`GoLab 2018 - Масімільяна Піппі - Шаблоны размяшчэння праектаў у Go`](https://www.youtube.com/watch?v=3gQa1LWwuzk)).

Expand Down
2 changes: 1 addition & 1 deletion README_bn.md
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ Go 1.14 এর সাথে [Go Modules](https://go.dev/wiki/Modules) অবশ

### /pkg

এখানে এমন লাইব্রেরি কোড রাখা হয় যেগুলো বাইরের অ্যাপ্লিকেশনগুলোর দ্বারা ব্যবহারযোগ্য (যেমন, `/pkg/mypubliclib`)।অন্য প্রজেক্টগুলো এই লাইব্রেরিগুলো ইমপোর্ট করবে এবং কাজ করবে বলে ধরে নেবে, তাই কিছু এখানে রাখার আগে দুইবার ভাবুন :)।মনে রাখবেন, `internal` ডিরেক্টরি ব্যবহার করাই সবচেয়ে ভালো উপায় কোনো প্যাকেজকে প্রাইভেট রাখতে, কারণ এটি Go কম্পাইলার দ্বারা জোরপূর্বক প্রয়োগ হয়।তবুও `/pkg` ডিরেক্টরি ব্যবহার করা ভালো একটি উপায় অন্যদেরকে স্পষ্টভাবে জানিয়ে দিতে যে, এখানকার কোড তারা নিরাপদে ব্যবহার করতে পারে।Travis Jeffery-এর [I'll take pkg over internal](https://travisjeffery.com/b/2019/11/i-ll-take-pkg-over-internal/) ব্লগ পোস্টে `pkg` এবং `internal` ডিরেক্টরি নিয়ে ভালো ব্যাখ্যা দেওয়া আছে — কবে কোনটি ব্যবহার করা উচিত তা নিয়ে।
এখানে এমন লাইব্রেরি কোড রাখা হয় যেগুলো বাইরের অ্যাপ্লিকেশনগুলোর দ্বারা ব্যবহারযোগ্য (যেমন, `/pkg/mypubliclib`)।অন্য প্রজেক্টগুলো এই লাইব্রেরিগুলো ইমপোর্ট করবে এবং কাজ করবে বলে ধরে নেবে, তাই কিছু এখানে রাখার আগে দুইবার ভাবুন :)।মনে রাখবেন, `internal` ডিরেক্টরি ব্যবহার করাই সবচেয়ে ভালো উপায় কোনো প্যাকেজকে প্রাইভেট রাখতে, কারণ এটি Go কম্পাইলার দ্বারা জোরপূর্বক প্রয়োগ হয়।তবুও `/pkg` ডিরেক্টরি ব্যবহার করা ভালো একটি উপায় অন্যদেরকে স্পষ্টভাবে জানিয়ে দিতে যে, এখানকার কোড তারা নিরাপদে ব্যবহার করতে পারে।Travis Jeffery-এর [I'll take pkg over internal](https://travisjeffery.com/ill-take-pkg-over-internal/) ব্লগ পোস্টে `pkg` এবং `internal` ডিরেক্টরি নিয়ে ভালো ব্যাখ্যা দেওয়া আছে — কবে কোনটি ব্যবহার করা উচিত তা নিয়ে।

এছাড়া এটি হলো Go কোডকে এক জায়গায় গুছিয়ে রাখার একটি উপায়, বিশেষ করে যখন আপনার রুট ডিরেক্টরিতে অনেক non-Go কম্পোনেন্ট বা ফোল্ডার থাকে। এতে বিভিন্ন Go টুল চালানো সহজ হয়।
(এই বিষয়ে আরও আলোচনা হয়েছে:
Expand Down
2 changes: 1 addition & 1 deletion README_es.md
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ Opcionalmente, puede agregar un poco de estructura adicional a sus paquetes inte

### `/pkg`

Código de biblioteca que puede usar aplicaciones externas (por ejemplo, `/pkg/mypubliclib`). Otros proyectos importarán estas bibliotecas esperando que funcionen, así que piénselo dos veces antes de poner algo aquí :-) Tenga en cuenta que el directorio `internal` es la mejor manera de asegurarse de que sus paquetes privados no se puedan importar porque Go lo aplica. El directorio `/pkg` sigue siendo una buena forma de comunicar explícitamente que el código de ese directorio es seguro para que lo utilicen otros. La publicación del blog de Travis Jeffery, [`I'll take pkg over internal`](https://travisjeffery.com/b/2019/11/i-ll-take-pkg-over-internal/), proporciona una buena descripción de los directorios `pkg` e `internal` y de cuándo podría tener sentido usarlos.
Código de biblioteca que puede usar aplicaciones externas (por ejemplo, `/pkg/mypubliclib`). Otros proyectos importarán estas bibliotecas esperando que funcionen, así que piénselo dos veces antes de poner algo aquí :-) Tenga en cuenta que el directorio `internal` es la mejor manera de asegurarse de que sus paquetes privados no se puedan importar porque Go lo aplica. El directorio `/pkg` sigue siendo una buena forma de comunicar explícitamente que el código de ese directorio es seguro para que lo utilicen otros. La publicación del blog de Travis Jeffery, [`I'll take pkg over internal`](https://travisjeffery.com/ill-take-pkg-over-internal/), proporciona una buena descripción de los directorios `pkg` e `internal` y de cuándo podría tener sentido usarlos.

También es una forma de agrupar el código de Go en un solo lugar cuando su directorio raíz contiene muchos componentes y directorios que no son de Go, lo que facilita la ejecución de varias herramientas de Go (como se menciona en estas charlas: [`Best Practices for Industrial Programming`](https://www.youtube.com/watch?v=PTE4VJIdHPg) de GopherCon EU 2018, [GopherCon 2018: Kat Zien - How Do You Structure Your Go Apps](https://www.youtube.com/watch?v=oL6JBUk6tj0) y [GoLab 2018 - Massimiliano Pippi - Project layout patterns in Go](https://www.youtube.com/watch?v=3gQa1LWwuzk)).

Expand Down
2 changes: 1 addition & 1 deletion README_fa.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@

کد کتابخانه که امکان استفاده توسط برنامه‌های خارجی را دارد (به‌عنوان مثال،  `/pkg/mypubliclib`). سایر پروژه‌ها این کتابخانه‌ها را import می‌کنند و انتظار کارکرد درست آنها را دارند، بنابراین قبل از قرار دادن چیزی در اینجا خوب فکر کنید :-) و توجه داشته باشید که  `internal` directory، راه بهتری برای اطمینان از وارد نشدن private packages شماست، زیرا توسط Go اجرا می‌شود. دایرکتوری `/pkg`همچنان راه خوبی برای بیان صریح این است که کد موجود در آن دایرکتوری برای استفاده توسط دیگران ایمن است.

مقاله وبلاگ « [`I'll take pkg over internal`](https://travisjeffery.com/b/2019/11/i-ll-take-pkg-over-internal/)» توسط Travis Jeffery، نمای کلی خوبی از دایرکتوری‌های pkg و internal و زمان‌هایی که استفاده از آنها منطقی است ارائه می‌دهد.
مقاله وبلاگ « [`I'll take pkg over internal`](https://travisjeffery.com/ill-take-pkg-over-internal/)» توسط Travis Jeffery، نمای کلی خوبی از دایرکتوری‌های pkg و internal و زمان‌هایی که استفاده از آنها منطقی است ارائه می‌دهد.

همچنین این راهی برای گروه‌بندی کد Go در یک مکان است، زمانی که دایرکتوری اصلی شما حاوی بسیاری از اجزا و دایرکتوری‌های غیر Go باشد، این کار اجرای ابزارهای مختلف Go را آسان‌تر می‌کند (همانطور که در این سخنرانی‌ها ذکر شده است: [`Best Practices for Industrial Programming`](https://www.youtube.com/watch?v=PTE4VJIdHPg) از GopherCon EU و [GopherCon 2018: Kat Zien - How Do You Structure Your Go Apps](https://www.youtube.com/watch?v=oL6JBUk6tj0) و [GoLab 2018 - Massimiliano Pippi - Project layout patterns in Go](https://www.youtube.com/watch?v=3gQa1LWwuzk)).

Expand Down
2 changes: 1 addition & 1 deletion README_fr.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ Vous pouvez également ajouter un peu de structure dans vos packages internes po

### `/pkg`

Placez-y le code qui peut être réutilisé par les applications externes (p. ex., `/pkg/mypubliclib`). D'autres projets peuvent importer ces bibliothèques et s'attendent donc à ce qu'elles soient fonctionnelles, pensez y donc à deux fois avant de mettre du code dans ce dossier :-) Utiliser le dossier `internal` est une manière plus adéquate de garder vos packages privés et non importables car c'est intégré au compilateur Go. Le dossier `/pkg` est néanmoins une bonne manière d'indiquer que le code contenu dans ce dossier peut être utilisé par les autres utilisateurs sans problème. L'article de blog de Travis Jeffery [`I'll take pkg over internal`](https://travisjeffery.com/b/2019/11/i-ll-take-pkg-over-internal/) explique plus en détail les différences entre les dossier `pkg` et `internal` et quand il fait sens de les utiliser.
Placez-y le code qui peut être réutilisé par les applications externes (p. ex., `/pkg/mypubliclib`). D'autres projets peuvent importer ces bibliothèques et s'attendent donc à ce qu'elles soient fonctionnelles, pensez y donc à deux fois avant de mettre du code dans ce dossier :-) Utiliser le dossier `internal` est une manière plus adéquate de garder vos packages privés et non importables car c'est intégré au compilateur Go. Le dossier `/pkg` est néanmoins une bonne manière d'indiquer que le code contenu dans ce dossier peut être utilisé par les autres utilisateurs sans problème. L'article de blog de Travis Jeffery [`I'll take pkg over internal`](https://travisjeffery.com/ill-take-pkg-over-internal/) explique plus en détail les différences entre les dossier `pkg` et `internal` et quand il fait sens de les utiliser.

C'est également une manière de regrouper tout votre code Go au même endroit lorsque votre dossier racine comporte de nombreux composants et dossiers non-Go, permettant plus facilement de lancer les différents outils Go, tel que mentionné dans les conférences suivantes : [`Best Practices for Industrial Programming`](https://www.youtube.com/watch?v=PTE4VJIdHPg) lors de GopherCon EU 2018, [GopherCon 2018: Kat Zien - How Do You Structure Your Go Apps](https://www.youtube.com/watch?v=oL6JBUk6tj0) et [GoLab 2018 - Massimiliano Pippi - Project layout patterns in Go](https://www.youtube.com/watch?v=3gQa1LWwuzk)).

Expand Down
2 changes: 1 addition & 1 deletion README_hi.md
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ Go १.१४ के साथ [`Go Modules`](https://go.dev/wiki/Modules) अ

### `/pkg`

भंडार[^16] कोड[^13] जो बाहरी एप्लिकेशनों[^1] द्वारा उपयोग करने के लिए ठीक है (उदाहरण के लिए, `/pkg/mypubliclib`)। अन्य परियोजनाएं[^2] इन भंडारों[^16] को काम करने की उम्मीद में आयात[^10] करेंगी, इसलिए यहां कुछ भी डालने से पहले दो बार सोचें :smile:। ध्यान दें कि `internal` फ़ोल्डर[^8] यह सुनिश्चित करने का एक बेहतर तरीका है कि आपके निजी संकुल[^15] आयात[^10] योग्य नहीं हैं क्योंकि यह Go द्वारा लागू किया गया है। `/pkg` फ़ोल्डर[^8] अभी भी स्पष्ट रूप से यह बताने का एक अच्छा तरीका है कि उस फ़ोल्डर[^8] का कोड[^13] दूसरों के उपयोग के लिए सुरक्षित है। Travis Jeffrey द्वारा [`I'll take pkg over internal`](https://travisjeffery.com/b/2019/11/i-ll-take-pkg-over-internal/) ब्लॉग लेख `pkg` और `internal` फ़ोल्डरों[^8] का एक अच्छा अवलोकन[^29] प्रदान करता है और कब उनका उपयोग करना उचित हो सकता है।
भंडार[^16] कोड[^13] जो बाहरी एप्लिकेशनों[^1] द्वारा उपयोग करने के लिए ठीक है (उदाहरण के लिए, `/pkg/mypubliclib`)। अन्य परियोजनाएं[^2] इन भंडारों[^16] को काम करने की उम्मीद में आयात[^10] करेंगी, इसलिए यहां कुछ भी डालने से पहले दो बार सोचें :smile:। ध्यान दें कि `internal` फ़ोल्डर[^8] यह सुनिश्चित करने का एक बेहतर तरीका है कि आपके निजी संकुल[^15] आयात[^10] योग्य नहीं हैं क्योंकि यह Go द्वारा लागू किया गया है। `/pkg` फ़ोल्डर[^8] अभी भी स्पष्ट रूप से यह बताने का एक अच्छा तरीका है कि उस फ़ोल्डर[^8] का कोड[^13] दूसरों के उपयोग के लिए सुरक्षित है। Travis Jeffrey द्वारा [`I'll take pkg over internal`](https://travisjeffery.com/ill-take-pkg-over-internal/) ब्लॉग लेख `pkg` और `internal` फ़ोल्डरों[^8] का एक अच्छा अवलोकन[^29] प्रदान करता है और कब उनका उपयोग करना उचित हो सकता है।

यह Go कोड[^13] को एक ही स्थान पर समूहित करने का एक तरीका है जब आपके मूल[^5] फ़ोल्डर[^8] में बहुत सारे गैर-Go अंग और फ़ोल्डर[^8] होते हैं जिससे विभिन्न Go उपकरण[^30] चलाना आसान हो जाता है (जैसा कि इन वार्ताओं में बताया गया है: [`Best Practices for Industrial Programming`](https://www.youtube.com/watch?v=PTE4VJIdHPg) GopherCon EU २०१८ से, [GopherCon 2018: Kat Zien - How Do You Structure Your Go Apps](https://www.youtube.com/watch?v=oL6JBUk6tj0) और [GoLab 2018 - Massimiliano Pippi - Project layout patterns in Go](https://www.youtube.com/watch?v=3gQa1LWwuzk))।

Expand Down
Loading