Welcome back, Brian! I really missed your coding videos. Luckily I had a bunch of paid course videos I still had to go through. Keep up the good work!
@youngdopeandsuccessful8533
6 жыл бұрын
It’s nice to see you again! This really helped me with the current project I am working on now! Thanks Brian!
@israelmanzo8725
6 жыл бұрын
Welcome back Brian! Thank you for this important topic on maintain good code.
@alphabetical2671
6 жыл бұрын
Very happy to see you please continue iOS app development in swift
@brettyoung4379
6 жыл бұрын
u should try flutter it's dope
@lindashrewsbury297
3 жыл бұрын
Wow I just found you. I am a brand new beginner. I will be checking you out more. Thank you for the great information.
@XecuttioneR
6 жыл бұрын
Perhaps it’s out of scope for the beginner-like purpose of this video, but in order to update the UI after getting the HomeFeed object in the completion handler, isn’t it necessary to return to the main thread first? Otherwise you get that “updating ui engine on another thread” error? I don’t mean to play “im the teacher”, I just learned that from a previous video of yours loooong ago No beef 😊
@LetsBuildThatApp
6 жыл бұрын
Yes, you would need to use a DispatchQueue.main call. I didn't really run the in the simulator :)
@caueb
6 жыл бұрын
Hi Brian, welcome back! Thank you a lot for all your video classes. Please talk about the new Firebase feature MLKIT.
@brettyoung4379
6 жыл бұрын
this is a really valuable point for Flutter especially. Widgets get messy really quickly, and it helps to create child widgets separately
@LetsBuildThatApp
6 жыл бұрын
Yeah flutter code gets real ugly real fast
@hare2693
6 жыл бұрын
tldr: DONT MAKE BIG BLOCKS OF CODE IF U CAN SEPARATE THINGS INTO FUNCTIONS THAT MAKE SENSE DO DAT.
@Michael-os3kc
4 жыл бұрын
THANK YOU
@g30r93g
6 жыл бұрын
Brian, you've pointed out a really big mistake I'm making. Thank you so much
@Zo91709
6 жыл бұрын
Nice tutorial Brian! Great idea to focus on the aspect of cleaning up code. Dope site also!
@OmegasMusic
6 жыл бұрын
Welcome back 🙏🏾
@TrejoMundos
6 жыл бұрын
Nice refactor, you are right. I liked the completion stuff.
@smackaroony
6 жыл бұрын
Welcome back
@bluesky31able
6 жыл бұрын
If there is an error, it will remain in the loading state, you should add a success parameter to completion block.
@LetsBuildThatApp
6 жыл бұрын
Correct. The better approach is to send an error back with your completion block. I'll leave it up to you guys to figure that step out.
@denniszhaunerchyk6191
6 жыл бұрын
Good video. Thank you for sharing your thoughts.
@tranai536
6 жыл бұрын
Hi Brian. Why didn't you put the reloading tableview task in the main thread? I thought whenever we update anything regarding to the UI we must go to the main thread.
@edwincreator2855
4 жыл бұрын
very useful
@MissaMelodica
6 жыл бұрын
I noticed and the website looks great!
@dosbol354
6 жыл бұрын
That's great, but can you answer, where I should put my network code? I mean, I have fetchJSON function which is being used for every API call. I have a lot of function in which the only difference is JSONDecoder Model.
@trevorduersch2278
4 жыл бұрын
Brian, I noticed that when you setup your code that your methods were "fileprivate." How's the best way to write unit tests with your fileprivate methods? Do you only write a test that calls the "viewDidLoad" and it will give you code coverage on your fileprivate methods? I mean what if you wanted to test one of your methods specifically? I mean I know you can change it to a public accessor method, but then that kind of defeats the purpose of encapsulation in OOP, doesn't it?
@LetsBuildThatApp
4 жыл бұрын
If its worth testing, then perhaps expose this chunk of code through a dependency injection object. I think various mocking libraries can also help with this situation.
@danyalOFF
6 жыл бұрын
what about MVVM tutorial? will you create a short series about this pattern? Thx!
@TheDancing0wind
6 жыл бұрын
This is a fist baby step but for a normal application you will have to go a couple of steps further: Move all the business data to xxxxDataModel/xxxxDataManager/xxxxDataControllerer(ech..) class
@StarTeamTutoriales
6 жыл бұрын
Very usefull
@JunaidKhan-ny8tu
6 жыл бұрын
wow , its super awesome ..
@engelshentenawy
6 жыл бұрын
Hey Brian, the new design looks awesome, but is it reloading when navigating between pages?
@LetsBuildThatApp
6 жыл бұрын
Yes it reloads on every page. As cool as single page apps sound, in practice its much easier to build a website that has many pages.
@samwd5039
6 жыл бұрын
thanks for sharing
@doffydonqouite7519
6 жыл бұрын
Thank you so much Brian I lost hope when you were gone for a month or two hahaha
@amritduwal9390
3 жыл бұрын
👍🏼
@alexr3d
6 жыл бұрын
By the way, any plans for the ReactJS course? You've just finished building the website and all, so it's the perfect time for you :-) I'd love to see something like this because I develop for iOS and Android and I would like to make an web app as well.
@LetsBuildThatApp
6 жыл бұрын
Did you watch the ReactJS video I put out a while back?
@alexr3d
6 жыл бұрын
Yes I did.
@LetsBuildThatApp
6 жыл бұрын
Cool, I think I'll make an instagram react course someday.
@kongpharath9566
6 жыл бұрын
Hello brother. I'm from Cambodia I want your help, how to build voice , video chat in android
@justinmoore8629
6 жыл бұрын
I was wondering what library or notifying protocol would you recommend for data binding to implement the mvvm pattern?
@LetsBuildThatApp
6 жыл бұрын
Bond or rx works
@raytso
6 жыл бұрын
Rx is great
@angadminhas7207
6 жыл бұрын
is the instagram course updated to swift 4.1?
@rylanjevans
6 жыл бұрын
Why do you use fileprivate func instead of a normal func? What makes that better? Faster, safer?
@LetsBuildThatApp
6 жыл бұрын
Hello Rylan, you should read the docs for why to use fileprivate.
@brendanbaic8716
6 жыл бұрын
Just a scoping thing; make things as visible as they _need_ to be but no more. Analogous to the principle of least privilege (en.wikipedia.org/wiki/Principle_of_least_privilege)
@dariuspaulbacate3408
6 жыл бұрын
brian i have a question, ahhhmmm how to pass a parameter on TRON service request? heres your on code on recent tutorials you made Sorry im just new at swift.... But i'm willingly want to learn about this language. Thanks a lot. Service.sharedInstance.fetchHomeFeed { (homeDatasource, err) in if let _ = err { self.errorMessageLabel.isHidden = false if let apiError = err as? APIError { //CHECK IF REQUEST STATUS FROM JSON IS FAILED OR NOT if apiError.response?.statusCode != 200 { self.errorMessageLabel.text = "No internet connection" } } return } self.datasource = homeDatasource } func fetchHomeFeed(completion: @escaping (HomeDatasource?, Error?) -> ()){ //START OUR JSON FETCH FROM REQUEST CONNECTIONS let request: APIRequest = tron.swiftyJSON.request("/Feeds/getAllFeeds") request.perform(withSuccess: { (homeDatasource) in //DISPLAY THE JSON DATAS completion(homeDatasource, nil) }) { (err) in print(err) completion(nil, err) } }
@LetsBuildThatApp
6 жыл бұрын
What do the TRON docs tell you to do?
@dariuspaulbacate3408
6 жыл бұрын
Hmmm I search on TRON Github but you can add parameter just only ready function just like update stuct on tron, but i want a get all data function of TRON requests so that i can retrieved filtered data by parameter i pass on server side. Heres the code... struct Users { static let tron = TRON(baseURL: "api.myapp.com") static func create() -> APIRequest { let request: APIRequest = tron.codable.request("users") request.method = .post return request } static func read(id: Int) -> APIRequest { return tron.codable.request("users/\(id)") } static func update(id: Int, parameters: [String:Any]) -> APIRequest { let request: APIRequest = tron.codable.request("users/\(id)") request.method = .put request.parameters = parameters return request } static func delete(id: Int) -> APIRequest { let request: APIRequest = tron.codable.request("users/\(id)") request.method = .delete return request } }
@dariuspaulbacate3408
6 жыл бұрын
Also can you have a new update tutorial about facebook login because i based always on your tutorial but your fb login tutorial is by year 2016 which is there are new updates on fb, the step by step process changed and theres no info list on fb. I just stuck in there heheheehehe. Thanks a lot
@samsulkarim164
3 жыл бұрын
I do that. sigh!
@carval51
6 жыл бұрын
Okay, honestly I tend to do this kind mistake when developing. though it's kinda to separate it into function. So what I usually do is just create it all in one big function then once I'm done with coding the whole things. I started to divide the code to separate function. Does my way of doing it still considered bad?
@seansneed5032
6 жыл бұрын
speaking candidly, I would suggest you watch this video a few times to comprehend the reasoning behind separating your code to begin with. hint: one big function will give you one big headache.
@The28studio
6 жыл бұрын
Yeah, still bad! do it from the beginning, because you will waste time refactoring and open the door to break stuff
@carval51
6 жыл бұрын
yeah I get it maybe I try to improve it. But for now it just hard to break function early on. Keep in mind what I mean by big function,is like around 30 line of code of function like making a fetch function in the video then I would break it into 3 part.
@LetsBuildThatApp
6 жыл бұрын
There are always different ways to separate out code. The more you build apps, the more you see the patterns.
@devsimples
6 жыл бұрын
Brian, do you have any architecture advices? I want to develop a good project using only code, but my view controllers are getting too big. I’m trying to use the swift clean templates: clean-swift.com/ I don’t know if I should keep using it... HEEELP PLEASE!
@LetsBuildThatApp
6 жыл бұрын
I have a lot of good recommendations for architecture of your apps, such as separating network calls into its own class, model objects staying lean, view classes for only views, etc. You can find all examples of this structure in the podcast course here: www.letsbuildthatapp.com/course/Podcasts Good luck.
@santespatel5227
6 жыл бұрын
Yup we definitely know ya 😂😂😂
@jonaseduardo01
5 жыл бұрын
The next step is avoid the massive view Controller :p
@vijaykharage
6 жыл бұрын
You are looking like Sherlock with that hat😂
@yukin2344
6 жыл бұрын
i can see steins;gate in the backgroud ;D
@LetsBuildThatApp
6 жыл бұрын
I need to watch the second season like now!
@abdulwahabfanar8588
6 жыл бұрын
Dude You look like Jackie chan
@LetsBuildThatApp
6 жыл бұрын
Thanks, I'm one of his biggest fans. Have you seen Rush Hour with Chris Tucker?
@dilsmatchanov
6 жыл бұрын
After the month )
@wanderwaffles3113
2 жыл бұрын
i c
@burnedoils
6 жыл бұрын
pointless advices that means nothing and are not any better than how it was to begin with, ching sue is realy good at talking about nothing
@alphabetical2671
6 жыл бұрын
Very happy to see you please continue iOS app development in swift
Пікірлер: 73