Presentation with a brief history of C, C++ and their ancestors along with an introduction to latest version C++11 and futures such as C++17. The presentation covers applications that use C++, C++11 compilers such as LLVM/Clang, some of the new language features in C++11 and C++17 and examples of modern idioms such as the new form compressions, initializer lists, lambdas, compile time type identification, improved memory management and improved standard library (threads, math, random, chrono, etc). (less == more) || (more == more)
C Programming/Strings. A string in C is merely an array of characters. The length of a string is determined by a terminating null character: '-' . So, a string with the contents, say, "abc" has four characters: 'a' , 'b' , 'c' , and the terminating null character.
Slides from my "Gentle Introduction to Modern C++" presentation from January 20, 2015 at the Dublin C/C++ User Group: www.meetup.com/cppdug/events/219787667/
The code examples are located here: https://github.com/mihaitodor/Presentations/tree/master/cppdug/20.01.2015
Presentation with a brief history of C, C++ and their ancestors along with an introduction to latest version C++11 and futures such as C++17. The presentation covers applications that use C++, C++11 compilers such as LLVM/Clang, some of the new language features in C++11 and C++17 and examples of modern idioms such as the new form compressions, initializer lists, lambdas, compile time type identification, improved memory management and improved standard library (threads, math, random, chrono, etc). (less == more) || (more == more)
C Programming/Strings. A string in C is merely an array of characters. The length of a string is determined by a terminating null character: '-' . So, a string with the contents, say, "abc" has four characters: 'a' , 'b' , 'c' , and the terminating null character.
Slides from my "Gentle Introduction to Modern C++" presentation from January 20, 2015 at the Dublin C/C++ User Group: www.meetup.com/cppdug/events/219787667/
The code examples are located here: https://github.com/mihaitodor/Presentations/tree/master/cppdug/20.01.2015
A string is a data type used in programming, such as an integer and floating point unit, but is used to represent text rather than numbers. It is comprised of a set of characters that can also contain spaces and numbers. For example, the word "hamburger" and the phrase "I ate 3 hamburgers" are both strings.
An introductory PowerPoint to understanding and applying the C++ programming language. Broken down into lessons covering:
Introduction: Definitions and the History of Programming
Lesson 1: Libraries, Variables and Types, Blocks and Namespaces, Functions
Lesson 2: If...Else Statements, For and While Loops, Scope
Exercise: Program a Gumball Game
Lesson 3: Classes and Objects, Pointers
What is Data Type?
Primitive Types in C#: Integer Types, Floating-Point Types, Decimal Type, Boolean Type, Character Types, Strings, Objects
Value Types and Reference Types
Variables. Using Variables: Declaring, Initializing, Assigning Value, Accessing Value
Literals: The Values of the Variables in the Source Code. Boolean Literals. Integer Literals. Floating-Point Literals, Decimal Literals, String Literals and Escaping Sequences
Exercises: Working with Primitive Types and Variables
This set of slides introduces the reader to the concept of resource wrappers, i.e., classes that are responsible for the correct handling of resources of some kind (e.g., memory). In particular, the presentation discusses the design and implementation of a simplified version of std::vector for the specific case of integer elements. In this regard, we first discuss the fundamental role of destructors as a deterministic, general-purpose undo mechanism. Second, we notice that providing an explicit destructor entails the need of a consequent explicit implementation for the copy constructor and copy assignment operator. We conclude with the formulation of the so-called "rule of three".
A string is a data type used in programming, such as an integer and floating point unit, but is used to represent text rather than numbers. It is comprised of a set of characters that can also contain spaces and numbers. For example, the word "hamburger" and the phrase "I ate 3 hamburgers" are both strings.
An introductory PowerPoint to understanding and applying the C++ programming language. Broken down into lessons covering:
Introduction: Definitions and the History of Programming
Lesson 1: Libraries, Variables and Types, Blocks and Namespaces, Functions
Lesson 2: If...Else Statements, For and While Loops, Scope
Exercise: Program a Gumball Game
Lesson 3: Classes and Objects, Pointers
What is Data Type?
Primitive Types in C#: Integer Types, Floating-Point Types, Decimal Type, Boolean Type, Character Types, Strings, Objects
Value Types and Reference Types
Variables. Using Variables: Declaring, Initializing, Assigning Value, Accessing Value
Literals: The Values of the Variables in the Source Code. Boolean Literals. Integer Literals. Floating-Point Literals, Decimal Literals, String Literals and Escaping Sequences
Exercises: Working with Primitive Types and Variables
This set of slides introduces the reader to the concept of resource wrappers, i.e., classes that are responsible for the correct handling of resources of some kind (e.g., memory). In particular, the presentation discusses the design and implementation of a simplified version of std::vector for the specific case of integer elements. In this regard, we first discuss the fundamental role of destructors as a deterministic, general-purpose undo mechanism. Second, we notice that providing an explicit destructor entails the need of a consequent explicit implementation for the copy constructor and copy assignment operator. We conclude with the formulation of the so-called "rule of three".
Learn about the basic fundamentals of java and important for the different company's interview. Topics like JRE, JDK, Java Keywords, Primitive DataTypes, Types of Variables, Logical, Shift and Bitwise Operator working, Command Line Argument, Handling Arrays, Array Copy, and different programs and output based programs.
Esoft Metro Campus - Certificate in c / c++ programmingRasan Samarasinghe
Ā
Esoft Metro Campus - Certificate in java basics
(Template - Virtusa Corporate)
Contents:
Structure of a program
Variables & Data types
Constants
Operators
Basic Input/output
Control Structures
Functions
Arrays
Character Sequences
Pointers and Dynamic Memory
Unions
Other Data Types
Input/output with files
Searching
Sorting
Introduction to data structures
These are the outline slides that I used for the Pune Clojure Course.
The slides may not be much useful standalone, but I have uploaded them for reference.
The Mindbowser Healthcare Technology Survey 2023 reveals that over two-thirds of respondents reported successful adoption of digital healthcare technology, but challenges remain in privacy and security measures. Priorities for healthcare technology companies include scaling product fit, data security, and feature roadmap development. The report also emphasizes the importance of prioritizing goals and strategies for digital transformation in healthcare.
Download now: https://success.mindbowser.com/D1IM
Top DevOps Trends And Statistics You Need To Know In 2023Mindbowser Inc
Ā
Software development and IT teams can work together more efficiently and automatically thanks to a set of tools, procedures, and concepts known as "DevOps." It focuses on techniques like technology automation, team empowerment, and cross-team communication and collaboration.
Article link: https://www.mindbowser.com/devops-trends/
How To Achieve Project Success With Your Outsourced Team?Mindbowser Inc
Ā
Project managers are responsible for the overall success of a project. However, this is not an easy task; it's almost impossible.
But don't worry; this presentation will help you manage your outsourced team so that you don't have to worry about losing money on your project.
This presentation will help you to understand:
šø Why outsourced projects fail?
šø Developing outsourcing strategy
šø Choosing the right outsourcing partner
šø Working with the outsourced team
šø Monitoring team progress
If you want to learn through the video, I did a detailed webinar. Do watch the webinar here: https://youtu.be/BriR9g2SSVA
Data Science Consulting: From Idea To DeploymentMindbowser Inc
Ā
What is the best data science consulting agency to choose? Here are a few signs that you've found the right one.
Article link : https://www.mindbowser.com/data-science-consulting/
Understanding The Difference Between RPO And Staff AugmentationMindbowser Inc
Ā
To help you choose the strategy that is most successful and satisfy your requirements, let's compare RPO and staff augmentation.
Article link: https://www.mindbowser.com/rpo-vs-staff-augmentation/
Top 5 Benefits Of IT Staff Augmentation For Modern BusinessesMindbowser Inc
Ā
Looking for ways to improve your business' IT operations? IT staff augmentation may be the answer. Here are five benefits of IT staff augmentation for modern businesses.
Article Link: https://www.mindbowser.com/benefits-of-it-staff-augmentation/
How To Select The Right Software Architecture For Your Healthcare Product?Mindbowser Inc
Ā
Choosing the right architecture is crucial when building healthcare software.
But, how to select the right software architecture?š¤
This presentation will help you to understand:
šø Building an MVP
šø What drives architectural decisions?
šø Stages In Product Journey
šø Summary Of Various Stages & Architectural Needs
šø Architecture For MVP
šø Architecture For Growth
šø Architecture For Scale
šø Architecture For Security & Compliance
If you want to learn through the video, I did a detailed webinar. Do watch the webinar here: https://youtu.be/FYUsswJJCrU
Agile Scrum Mastery: Learn How To Bring Complex Projects To life!Mindbowser Inc
Ā
Agile Scrumās primary objective is to satisfy the customerās needs through maintaining transparency in communication, collective responsibility and continuous progress.
By the end of this presentation, you will be able to understand
šWhat is Agile?
šScrum Skeleton
šScrum Roles
šScrum Artifacts
šScrum Events
šBest Execution Of Scrum Events
Just in case you want to learn through the video, I did an in detail webinar on Agile Scrum Mastery. Do check it out.
Hereās the link. š
https://www.youtube.com/watch?v=U8iPzZybk08
A Guide To Minimum Viable Architecture Points For Any StartupMindbowser Inc
Ā
For your startup, do you want to create an MVP? This pptĀ will assist you in creating one that is more than just a prototype and has a Minimum Viable Architecture.
Check for detail information: https://www.mindbowser.com/minimum-viable-architecture/
In healthcare, the most common medical error comes from patient care or medication. The EHR platform reduces the medical records that can happen by "flagging potential drug interactions and adverse reactions."
Technology advancement, like Electronic Health Records, has changed the conventional direction of the healthcare industry. Previously, medical data was 100% paper-based documents, but today the trend has changed, and hospitals are adopting EHR.
In the above slides, we have highlighted the benefits and challenges of EHR in the healthcare industry. To read more about Electronic Health Records visit https://success.mindbowser.com/5u6g
What To Choose Between - Native App And Hybrid Mobile AppMindbowser Inc
Ā
The most popular mobile development platforms are iOS and Android. Most applications developed are for either or both of these platforms. The most crucial issue that companies have to go through with during app development is whether they should build a Native app or a Hybrid app.
If you do not know the difference between the two, there is no need to worry. Here is everything you need to know about native apps and hybrid apps. Read on to know more at https://success.mindbowser.com/native-app-vs-hybrid-app
7 Secret Reasons To Choose An Outsourced Agency?Mindbowser Inc
Ā
Choosing between outsourcing your development needs or not, will depend on a number of factors such as availability of talent, founderās background, type of startup, type of work to be outsourced, priorities for the company, the personality of team members, and so on. Since the overall decision is based on so many factors, there is not always a clear answer on whether to outsource or not, and if yes, then how much to outsource. Companies have found success in different forms and sizes of outsourcing, from a small part of their overall development to having a completely outsourced technology team.
Here are some points to consider why choosing to go with an outsourced agency makes sense
Read More @ https://success.mindbowser.com/questions-to-ask-before-you-outsource
In this slideshare, we talk about what exactly goes into our recipe to thrill our customers. While researching, I found that our recipe actually does not have few great things but is rather a combination of many small things. These are the things that were never meticulously planned but have evolved as a process during our pursuit to thrill our customers.
Read on to learn more about the different things we do that thrills our customers.
https://success.mindbowser.com/how-we-thrill-our-customers
Technology advancement, like Electronic Health Records, has changed the conventional direction of the healthcare industry. Here are the benefits and Challenges of EHR you should know before implementing Electronic Health Records.
Know more- https://success.mindbowser.com/benefits-and-challenges-of-ehr-implementation
20 Tools That Any Non Tech Founder Can Use To Manage Their Tech Product Devel...Mindbowser Inc
Ā
You donāt need to be a programmer to always contribute to a tech project, but you can use easily available tools to one, know what you are getting and two to be able to communicate with your team.
Here is the complete list of tools. If there is a tool that you would like to recommend, please drop it in the comments.
Read more to know in detail about the tools at https://success.mindbowser.com/tools-that-non-tech-founder-can-use-to-manage-their-tech-product-development
Get Ready For What's New In Insurance Technology Trends For 2021Mindbowser Inc
Ā
The Insurance technology trends will streamline various processes and smoothen up the road to developing various products catering to the current times and users. Some of the Insurance technology trends that can alter and transform the insurance industry are shared here.
Read More about the latest insurance technology trends 2021 on https://success.mindbowser.com/insurance-technology-trends
10 top mobile app development trends to look out for in 2021Mindbowser Inc
Ā
Letās explore current trends in the mobile app development era. Take a deep dive into these trends to better understand and set Mobile App Development Trends 2021. https://success.mindbowser.com/32c4
15 Questions To Answer Before Building Your WebsiteMindbowser Inc
Ā
Looking to build your website? Let's face the fact. Upto 90% of websites on the internet are not visited by anyone except the owners themselves.
Just like anything else, website development too needs a proper plan that when executed well takes the guesswork out of the equation.
Here are 15 questions that you need to ask yourself before building your website. Finding answers to these questions will lead you to decipher your own latent needs and discover the why behind the what.
It will make your decision-making easy in terms of what goes on the website, what is highlighted on the homepage, what comes in the menu, etc.
Go ahead and read- 15 questions that any marketing website owner should answer before building the website.
https://success.mindbowser.com/15-questions-to-answer-before-building-your-website
10 growth strategies for a telehealth platformMindbowser Inc
Ā
Today Telehealth is mainstream. Prominent healthcare organizations, as well as individuals, entrepreneurs, and institutions, are addressing the use of telehealth platforms for catering to patients through telehealth. While telehealth had remained on the verge of disruption, COVID provided the necessary push to bring Telehealth for everyone.
This has opened a new door of opportunity for Healthcare entrepreneurs, and telehealth launches have seen a steep rise in 2020.
As launching and building telehealth platforms becomes competitive, we share some of the tips and ideas that will help you plan to launch a telehealth platform.
https://success.mindbowser.com/10-growth-strategies-for-telehealth-platform
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Ā
Are you looking to streamline your workflows and boost your projectsā efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, youāre in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part āEssentials of Automationā series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Hereās what youāll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
Weāll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Donāt miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
Ā
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more āmechanicalā approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
Ā
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Ā
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
DevOps and Testing slides at DASA ConnectKari Kakkonen
Ā
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Ā
Clients donāt know what they donāt know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clientsā needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
Generating a custom Ruby SDK for your web service or Rails API using Smithyg2nightmarescribd
Ā
Have you ever wanted a Ruby client API to communicate with your web service? Smithy is a protocol-agnostic language for defining services and SDKs. Smithy Ruby is an implementation of Smithy that generates a Ruby SDK using a Smithy model. In this talk, we will explore Smithy and Smithy Ruby to learn how to generate custom feature-rich SDKs that can communicate with any web service, such as a Rails JSON API.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
Ā
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. Whatās changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
Ā
As AI technology is pushing into IT I was wondering myself, as an āinfrastructure container kubernetes guyā, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefitās both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Ā
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as āpredictable inferenceā.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
Ā
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
Ā
Syntax Comparison of Golang with C and Java - Mindbowser
1.
2. Syntax
C Java Go
Extension .c .java .go
VM Needed Not needed JVM is there to
convert java files
to class files
Not needed
Compiler TurboC javac gc
Program
Execution
Starts from
main() function
Starts from
public static void
main(String[ ]
args)
starts from
func main() and
should be in
package main
3. Syntax
C Java Go
Variable
Declaration
int a; float b;
int a,b,c;
Initialization
int a=25;
char c=āaā;
int a; float b; a int
var c string
var a,b,c float
Initialization
var o,p int=34,65
k=45.67 (type of variable
auto judged by
compiler)
Shorthand notation
a:=30 (only inside
function)
Data Types bytes,short,int,long,
double,float,char,void
Primitive
bytes,short,int,long
,double,float,
boolean,char
uint, int,float32,...,
complex, byte,rune
4. C Java Go
Constant const int LEN=10 final int PI=3.14 const LEN int=10
Operators All operators like
Arithmetic,Logical,
Bitwise etc. are
same
All operators like
Arithmetic,Logical,
Bitwise etc. are
same
All operators like
Arithmetic,Logical,
Bitwise etc. are
same
Decision Making
Statements
(If else)
if(i>5){
flag=true
}
else{
flag=false
}
if(i>5){
flag=true
}
else{
flag=false
}
if i>5{
flag=true
}else{
flag=false
}
Syntax
5. C Java Go
Switch Case switch(i){
case 1: ā¦ā¦
break;
.
.
default:.....
break ;
}
switch(i){
case 1: ā¦ā¦
break;
.
.
default:.....
break ;
}
Expression switch
switch marks{
case 90: grade==āAā
case 50,60,70:grade==āC .
default: fmt.Println(āInvalidā)
}
Type switch
var x interface{}
switch x.(type){
case int:
fmt.Println(āx is intā)
default:
fmt.Println(āI donāt knowā)
}
Syntax
6. C Java Go
For loop for(i=1;i<5;i++){
ā¦ā¦...
}
for(i=1;i<5;i++){
ā¦ā¦ā¦ā¦..
}
for i:=0;i<5;i++{
ā¦ā¦ā¦..
}
for key,val:=range
numbers{
ā¦ā¦ā¦ā¦..
}
While Loop while(i<10){
i++;
}
while(i<10){
i++;
}
for sum<100{
sum+=sum
}
Syntax
7. C Java Go
Function Declaration
int sum(int,int)
int sum(int x,int y){
ā¦ā¦ā¦ā¦ā¦
return
}
Calling
int add;
add=sum(10,20)
-Supports pass by
value and reference
Define method
public int sum(int
a,int b){
ā¦ā¦ā¦ā¦..
return
}
-Only pass by value
func sum(no int)
(int){
ā¦ā¦
return ..
}
-Both pass by value
and reference
Function
Overloading
No Yes No
Syntax
8. C Java Go
Variadic Functions No printMax(10,20,30)
public static void
printMax(doubleā¦
numbers){
ā¦ā¦...
}
func sum(num
...int) int{
ā¦..
ā¦.
}
Ex. Println() is
implemented in
āfmtā
package
func Println(a
...interface{})(n
int,err error)
String char greet[6]={
āhā,āeā,ālā,ālā,āoā,ā0ā
}
String s=new
String(āHelloā)
var
greeting=āHelloā
Syntax
9. C Java Go
String Functions strcpy(str1, str2)
strcat(str1,str2)
strlen(s1)............
str.length()
str.concat(str2)
str.compareTo(str2
)
String is made up
of runes. Rune is
UTF Format (A-
ā65ā,a-ā97ā)
len(str)
strings.join(str1,str
2)
Arrays Fixed size data
structure
Declaration
int array[10];
Accessing Elements
int value=array[10]
Declaration
int[ ] numbers
Creation
numbers=new
int[10]
Declaration
var number [10]int
Initialization
Var bal=[10]
int{...............}
Syntax
10. C Java Go
Slice There is no growable
data structure
java.util.Collection
package provides
dynamic growable
array. E.g List,Set,Map
etc
Growable data
structure
Declaration
var numbers []int
Creation
numbers=make([
]int,5,5)
5 len, 5 is capacity
append(),copy()
Default value - nil
Map There is no map data
structure in C
Key, Value pair
Map m=new
HashMap()
Map[key] value
Default value is nil
Syntax
11. C Java Go
Map - m.put(āZeroā,1)
put( )
get( )
ForEach to iterate
over collection and
array
var dictionary=map
[string] int
dictionary[āZeroā]=1
Create using make
var dict=make(map
[string] int)
Range -> to iterate over
slice,map
for key,val:=range values
{
ā¦ā¦...
}
Syntax
12. C Java Go
Struct / Class Collection of fields and
methods
struct book{
int id;
char name[50];
char author[50];
}book;
//Access members
struct book book1;
strcpy(book1.id,400)
Java does not have
struct but have
class
class Books{
int id;
String name;
String author;
void display(){
ā¦ā¦ā¦ā¦...
}
}
Books b=new
Book();
b.name=āVisionā
Go have struct to
hold data in
variables.
type struct Book{
id int;
name string;
}
func(book3 *Book)
display() {
ā¦ā¦ā¦ā¦..
}
book1:=new(Book)
var book2 Book;
book2.name=āGoā
Syntax
13. C Java Go
Embedding It is like inheritance
in Java
class A {
ā¦.
}
Class B extends A
{
...
}
type Person struct{
Name string
}
func (per *Person)
speak(){
ā¦ā¦..
}
type Mobile struct{
Person
Model String
}
Mob:=new(Mobile)
mob.Person.speak(
)
Syntax
14. C Java Go
Pointer Direct address of
memory location
int *a
a=&b;
NULL pointer
Always assign null
value to pointer
variable when you
donāt know exact
address to assign
int *a=NULL;
Java does not
support pointer
var a *int
var fp *float32
a=&p
NIL pointer
var *p int=nil
Syntax
15. C Java Go
Interface C does not have
interface concept
-Collection of only abstract
methods (from java 8 it
supports static methods
also)
-Classes implements
interface
public interface Animal{
public void eat();
public void sleep();
}
public class Monkey extends
Animal{
ā¦ā¦ā¦..
}
-Provides method
signatures
type Shape
interface {
area() float64
}
type square struct{
side float64
}
func(sq Square)area( )
float64 {
return sq.side*sq.side
}
Same method signature
is implemented
Syntax
16. C Java Go
Go has empty interface which is like
object class in java. An empty
interface can hold any type of
value.
fmt.Println(a ...interface{ })
Type Casting Convert variable from
one to another data type
(type) expression
int sum=5,count=2;
Double d=(double)
sum/count
Widening
byte->short->int->float->
long->double
float=10
Narrowing
double->float->long->int-
>short->byte
int a=(float)10.40
var i int=10
var f float64=6.44
fmt.Println(float64(i))
fmt.Println(int(f))
Syntax
17. C Java Go
Error Handling -No direct support for error
handling
But it returns error no.
perror() and strerror() used to
display text message associated
with error no
int dividend=20;
int divisor=0;
int quotient;
if(divisor==0){
fprintf(stderr,āDivide by zeroā);
exit(-1);
}
Exception Handling
-Exception is problem
arises during program
execution.
Checked/Unchecked Ex.
try{
ā¦ā¦
}
catch(Exception ex){
ā¦ā¦..
}
finally{
ā¦ā¦..
}
No try/catch mechanism.
Instead it is having
defer,panic,recover
concepts.
-Provides error interface
type error interface{
Error() string
}
Normally function
returns error as last
return value. Use
errors.New() for
specifying error msg.
Syntax
18. C Java Go
Concurrency /
Multithreading
Doesnāt have
support.
Java have multithreading
concept for simultaneous
execution of different
tasks at same time.
We need to extends
Thread class or Runnable
interface and then
implement run( ) and write
your code
start(),run(),join(),sleep(),...
Here, we use
goroutines for
concurrent
execution.
To make function
as goroutine just
append go in front
of your function.
Two goroutines are
communicating
using channel
concept
Syntax