Nitin Agrawal
Contact -
  • Home
  • Interviews
    • Secret Receipe
    • InterviewFacts
    • Resume Thoughts
    • Daily Coding Problems
    • BigShyft
    • CompanyInterviews >
      • InvestmentBanks >
        • ECS
        • Bank Of America
        • WesternUnion
        • WellsFargo
      • ProductBasedCompanies >
        • CA Technologies
        • Model N India
        • Verizon Media
        • Oracle & GoJek
        • IVY Computec
        • Nvidia
        • ClearWaterAnalytics
        • ADP
        • ServiceNow
        • Pubmatic
        • Expedia
        • Amphora
        • CDK Global
        • CDK Global
        • Epic
        • Sincro-Pune
        • Whiz.AI
        • ChargePoint
      • ServiceBasedCompanies >
        • Altimetrik
        • ASG World Wide Pvt Ltd
        • Paraxel International & Pramati Technologies Pvt Ltd
        • MitraTech
        • Intelizest Coding Round
        • EPAM
    • Interviews Theory
  • Programming Languages
    • Java Script >
      • Tutorials
      • Code Snippets
    • Reactive Programming >
      • Code Snippets
    • R
    • DataStructures >
      • LeetCode Problems
      • AnagramsSet
    • Core Java >
      • Codility
      • Program Arguments OR VM arguments & Environment variables
      • Java Releases
      • Threading >
        • ThreadsOrder
        • ProducerConsumer
        • Finalizer
        • RaceCondition
        • Executors
        • Future Or CompletableFuture
      • Important Points
      • Immutability
      • Dictionary
      • URL Validator
    • Julia
    • Python >
      • Decorators
      • String Formatting
      • Generators_Threads
      • JustLikeThat
    • Go >
      • Tutorial
      • CodeSnippet
      • Go Routine_Channel
      • Suggestions
    • Methodologies & Design Patterns >
      • Design Principles
      • Design Patterns >
        • TemplatePattern
        • Adapter Design Pattern
        • Decorator
        • Proxy
        • Lazy Initialization
        • CombinatorPattern
        • RequestChaining
        • Singleton >
          • Singletons
  • Frameworks
    • Apache Velocity
    • Spring >
      • Spring Boot >
        • CustomProperties
        • ExceptionHandling
        • Issues
      • Quick View
    • Rest WebServices >
      • Interviews
      • Swagger
    • Cloudera BigData >
      • Ques_Ans
      • Hive
      • Apache Spark >
        • ApacheSpark Installation
        • SparkCode
        • Sample1
        • DataFrames
        • RDDs
        • SparkStreaming
        • SparkFiles
    • Integration >
      • Apache Camel
    • Testing Frameworks >
      • JUnit >
        • JUnit Runners
      • EasyMock
      • Mockito >
        • Page 2
      • TestNG
    • Blockchain >
      • Ethereum Smart Contract
      • Blockchain Java Example
    • Microservices >
      • Messaging Formats
      • Design Patterns
    • AWS >
      • Honeycode
    • Dockers >
      • GitBash
      • Issues
  • Databases
    • MySql
    • Oracle >
      • Interview1
      • SQL Queries
    • Elastic Search
  • Random issues
    • TOAD issue
    • Architect's suggestions
  • Your Views
Suggestion 1 : During array & slice copy, notice the behavior whether it is 'Pass by Value' or 'Pass by Reference'
Suggestion 2 : While working with array & slice, notice what is 'Inclusive' & 'Exclusive'
Suggestion 3 : Note the naming conventions, like when to use ParcelNaming & when to use camelCase convention
Suggestion 4 : While referring an array variable, note it is pass by value, so it can impact the memory performance.
Suggestion 5 : const variables can be shadowed.
Suggestion 6 : Slice is a projection on an Array, so while copying slice you still be referring the original array but during array
                          copy it makes a totally different array.
Suggestion 7 : Check closely when some property can be exported & when not.
Suggestion 8 : While passing array it is Pass by Value but while passing Map, it is Pass by Reference. Similarly for Struct it is
                          Pass by Value.
Suggestion 9 : Understand the concept of inheritence in Go
Suggestion 10 : Note 'fallthrough' in switch case instead of 'break'
Suggestion 11 : Note, you can use overlapping cases if not tagging in switch statement else it gives error.
Suggestion 12 : In Golang, there is no concept of exception, it has panic(), so plan the actions accordingly.
Suggestion 13 : In Golang it is Pass by Value for arrays, struct types etc by default. For Map & slice, it is Pass by Reference
Suggestion 14 : While passing large data structures to the functions & it being a Pass by Value, then it will hurt your
                            application to make the copies everytime, so you can consider to pass the pointers. But again remember that
                            it will be Pass by Reference & any change to the structure in the function will change the original one & that
​                            can cause issues further.
Suggestion 15 : Go doesn't allow any variable unused to be present in the code, so it can be bit frustrating when you want to
                            have some extra variables put in code to use later.
Powered by Create your own unique website with customizable templates.