Would you like to inspect the original subtitles? These are the user uploaded subtitles that are being translated:
1
00:00:02,310 --> 00:00:05,890
So we've got quite a lot of folders and files here. Now
2
00:00:05,920 --> 00:00:12,550
a lot of the files you see here are only there for configuration and a lot of the folders here also
3
00:00:12,550 --> 00:00:14,090
don't need to be touched by you
4
00:00:14,110 --> 00:00:17,170
but let me explain what each folder and file does.
5
00:00:17,170 --> 00:00:19,420
Let's go from top to bottom,
6
00:00:19,540 --> 00:00:24,730
the idea folder here holds some configuration for Android Studio.
7
00:00:24,730 --> 00:00:29,860
It doesn't really matter for us here because we're not working with Android Studio and you don't need
8
00:00:29,860 --> 00:00:31,770
to change anything in here.
9
00:00:31,980 --> 00:00:34,320
Vscode is a folder you might not have,
10
00:00:34,330 --> 00:00:39,120
I have it here because I added some extra configuration for this project,
11
00:00:39,160 --> 00:00:45,160
I set the zoom level so that you can see my code and anything you do configure for your vscode,
12
00:00:45,220 --> 00:00:50,650
your Visual Studio Code project here would end up in such a config file and you don't need that if
13
00:00:50,650 --> 00:00:54,130
you don't have any special development options here.
14
00:00:54,130 --> 00:00:56,140
The Android folder is super important,
15
00:00:56,170 --> 00:01:01,900
it holds a complete Android project as you could also create it without Flutter.
16
00:01:01,900 --> 00:01:02,800
This is is in the end
17
00:01:02,800 --> 00:01:10,780
the project which the Flutter SDK will use to kind of merge with your Flutter code you could say, so
18
00:01:10,780 --> 00:01:16,180
when your Flutter code gets compiled to native code, it will basically get injected into this Android
19
00:01:16,180 --> 00:01:17,710
project you could say
20
00:01:17,710 --> 00:01:23,890
and that is the Android project which later will be built into a real Android app or later actually
21
00:01:23,890 --> 00:01:28,330
is the wrong word, which already got built into this Android app we're seeing here.
22
00:01:28,330 --> 00:01:33,520
So this is in the end of normal Android project with your compiled Flutter code and you don't need to change
23
00:01:33,610 --> 00:01:39,460
anything in here or very rarely and I will mention when you do need to change anything here. For the
24
00:01:39,460 --> 00:01:41,410
most part, for the most time,
25
00:01:41,530 --> 00:01:47,140
this is a passive folder which will be used by Flutter and therefore it's super important but not a
26
00:01:47,140 --> 00:01:52,570
folder you work on. The build folder is also very important, in the end,
27
00:01:52,630 --> 00:01:56,960
this holds the output of your Flutter application,
28
00:01:56,980 --> 00:02:04,120
in this case here also some Android or Java files and this folder is generated and managed by the Flutter
29
00:02:04,120 --> 00:02:05,080
SDK.
30
00:02:05,080 --> 00:02:11,470
You shouldn't change anything in there, that will all be done automatically by the Flutter SDK when you
31
00:02:11,470 --> 00:02:16,910
are developing or when you are building your app for deployment, which we will do at the end of the course
32
00:02:17,050 --> 00:02:23,780
and therefore this is also a passive folder. So thus far, no folder in which we would work.
33
00:02:23,860 --> 00:02:25,670
It's the same for the iOS folder,
34
00:02:25,750 --> 00:02:31,720
we had the Android folder with a full Android project, which is important for building an Android project,
35
00:02:31,810 --> 00:02:37,570
both for development and for production and the iOS folder is simply the same for
36
00:02:37,730 --> 00:02:44,260
iOS projects. Now on Windows, you won't have that folder because on Windows unfortunately, you can't
37
00:02:44,260 --> 00:02:46,150
build iOS applications,
38
00:02:46,300 --> 00:02:53,830
that's not allowed by Apple. On MacOS, you will have it and this holds a normal Xcode project, Xcode
39
00:02:53,860 --> 00:02:59,800
is the development environment of MacOS, for iOS apps and just as with the Android folder,
40
00:02:59,800 --> 00:03:04,310
this is a folder where you really won't work in too much.
41
00:03:04,330 --> 00:03:08,650
There are some occasions where we will do some work in here but I will mention when this is the case,
42
00:03:08,860 --> 00:03:15,220
for the most part this is a passive folder which gets kind of merged with your Flutter code in the end
43
00:03:15,610 --> 00:03:22,510
and which will all be managed by the Flutter SDK to get iOS applications, both for development and
44
00:03:22,510 --> 00:03:30,160
testing as well as for the real application in the end which you deploy. The lib folder is now the important
45
00:03:30,160 --> 00:03:37,690
folder for us, lib stands for library and that is the folder where we will do 99% of our work.
46
00:03:37,690 --> 00:03:44,320
It is the folder where we will add all our Dart files, Dart is the programming language Flutter uses
47
00:03:44,740 --> 00:03:47,800
to write the code for our Flutter application.
48
00:03:47,800 --> 00:03:52,370
So this is the folder where we will add files and where we will write code in,
49
00:03:52,390 --> 00:03:58,640
this is a super important folder for us. The test folder is a folder which won't be too important for
50
00:03:58,640 --> 00:03:59,340
us here,
51
00:03:59,360 --> 00:04:03,900
it allows us to write tests for our application, automated tests,
52
00:04:04,040 --> 00:04:09,230
so basically code that runs our code and tests it for certain things,
53
00:04:09,380 --> 00:04:15,140
certainly important once you're a bit of a more advanced Dart and Flutter developer but not important
54
00:04:15,140 --> 00:04:21,690
for us right now and therefore, we can safely ignore this. gitignore is a folder that helps you when you're
55
00:04:21,710 --> 00:04:25,940
using git which is a source code management tool,
56
00:04:25,940 --> 00:04:31,070
it allows you to create snapshots of your code, save them and you can go back to them at a later point
57
00:04:31,070 --> 00:04:31,510
of time
58
00:04:31,520 --> 00:04:39,380
if you messed up something or if you wanna change something. It is not a tool you have to use but often
59
00:04:39,410 --> 00:04:42,260
during development, git can be really useful
60
00:04:42,260 --> 00:04:48,920
and after this lecture, you find a short text lecture on git. Using it is totally optional but if you
61
00:04:48,920 --> 00:04:53,870
want to use it, if that sounds interesting to you, that lecture will help you get started with it and then
62
00:04:53,870 --> 00:04:55,720
you can use it if you want to use it.
63
00:04:56,720 --> 00:05:03,920
The metadata file is not really a file we will work on, it will be managed automatically by Flutter
64
00:05:04,040 --> 00:05:10,670
and in the end, the Flutter tool simply saves some information in here which it needs to build
65
00:05:10,670 --> 00:05:12,010
our application correctly
66
00:05:12,020 --> 00:05:13,330
and so on.
67
00:05:13,340 --> 00:05:15,720
The same is true for the .packages file,
68
00:05:15,730 --> 00:05:18,170
it's not a file we'll do any work in,
69
00:05:18,240 --> 00:05:21,900
this is generated automatically by the Flutter SDK and in the end,
70
00:05:21,890 --> 00:05:24,920
this also just manages some internal dependencies,
71
00:05:24,920 --> 00:05:26,330
some packages
72
00:05:26,360 --> 00:05:29,860
this project needs and it is fully managed automatically,
73
00:05:29,870 --> 00:05:35,320
you should not delete it but you also shouldn't work in it. This file here,
74
00:05:35,330 --> 00:05:35,760
this .iml
75
00:05:35,790 --> 00:05:41,740
file which has your project name as a name is also file where we will not work in,
76
00:05:41,740 --> 00:05:47,550
it's also managed automatically by the Flutter SDK to again manage some internal dependencies and some
77
00:05:48,000 --> 00:05:49,290
settings for this project
78
00:05:49,290 --> 00:05:55,940
you could say and it's not a file which we'll change. Now the pubspec.lock file is also not a file
79
00:05:55,940 --> 00:06:01,440
we'll work in and it becomes clearer once we understand the pubspec.yaml file which is a file in
80
00:06:01,440 --> 00:06:02,980
which we will work.
81
00:06:03,000 --> 00:06:09,620
This is a file that allows you to mostly manage these dependencies of your project.
82
00:06:09,630 --> 00:06:11,090
Now what does this mean?
83
00:06:11,100 --> 00:06:15,950
This means that here, you can configure which other third-party packages
84
00:06:16,020 --> 00:06:18,220
your project might be using.
85
00:06:18,420 --> 00:06:24,720
You can also configure some other things in here, like for example fonts you want to use or images you
86
00:06:24,720 --> 00:06:29,880
want to use in your application and we'll use all these features, we'll work with third-party packages
87
00:06:30,030 --> 00:06:36,060
and we'll use fonts and images and therefore I will show you how to work with this file and how to change
88
00:06:36,060 --> 00:06:38,790
it to include new fonts or new images,
89
00:06:39,060 --> 00:06:41,850
I will show you all of that step-by-step.
90
00:06:41,850 --> 00:06:49,110
Basically what you have here is code written in yaml which is a certain format for structuring text
91
00:06:49,110 --> 00:06:54,480
files, where you use indentation to express how code works together
92
00:06:54,570 --> 00:07:01,350
and here for example, we're right now specifying with which Dart version this works, which version
93
00:07:01,350 --> 00:07:07,200
or application it should have, also which third-party packages we might be using, like here the Cupertino
94
00:07:07,200 --> 00:07:13,160
icons which allows us to use certain iOS styled icons in the application and
95
00:07:13,210 --> 00:07:16,740
we'll add other third-party packages throughout this course here.
96
00:07:16,740 --> 00:07:26,010
So this is basically a config file that allows us to configure how our application works or which external
97
00:07:26,010 --> 00:07:29,900
dependencies it has, for the moment we don't need to change anything here.
98
00:07:29,940 --> 00:07:35,970
The pubspec.lock file in the end is a file that is generated automatically based on your
99
00:07:36,000 --> 00:07:37,380
.yaml file here
100
00:07:37,560 --> 00:07:44,880
and this simply holds more details then about all the dependencies you have and it is required by Flutter
101
00:07:44,910 --> 00:07:47,630
but it's not a file you will work, in the end
102
00:07:47,670 --> 00:07:49,830
as I said, it will be generated automatically,
103
00:07:49,830 --> 00:07:51,800
we will only work in the yaml file.
104
00:07:52,290 --> 00:07:57,900
Well and the README file is an automatically generated README file which we can ignore, it holds some
105
00:07:58,140 --> 00:08:01,170
information about our project and you could change this here
106
00:08:01,170 --> 00:08:06,450
if you were sharing your project with other developers and you want to give them some information. So
107
00:08:06,450 --> 00:08:11,520
that was a thorough walkthrough through all the folders and files, the core takeaway is that we will work in
108
00:08:11,520 --> 00:08:17,730
the lib folder and sometimes with that pubspec.yaml file and we can basically ignore all other files
109
00:08:17,790 --> 00:08:18,420
and folders.
11887
Can't find what you're looking for?
Get subtitles in any language from opensubtitles.com, and translate them here.